/ Check-in [5328f899]
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix another name resolution problem occurring when two or more attached databases use the same Schema object.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | reuse-schema1
Files: files | file ages | folders
SHA3-256: 5328f89951b34c9543a7289efd830acb252422a976819eadd036725c1553ec0f
User & Date: dan 2018-11-17 19:15:25
Context
2018-11-19
20:41
Fix a problem with virtual tables in shared schemas. check-in: 84be9220 user: dan tags: reuse-schema1
2018-11-17
19:15
Fix another name resolution problem occurring when two or more attached databases use the same Schema object. check-in: 5328f899 user: dan tags: reuse-schema1
18:45
Merge latest trunk changes into this branch. check-in: 9fdd1868 user: dan tags: reuse-schema1
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/resolve.c.

252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
              pMatch = pItem;
              pExpr->iColumn = j;
              hit = 1;
            }
          }
          if( hit || zTab==0 ) continue;
        }
        if( zDb 
         && iDb!=sqlite3SchemaToIndex2(db, pTab->pSchema, pItem->zDatabase) 
        ){
          continue;
        }
        if( zTab ){
          const char *zTabName = pItem->zAlias ? pItem->zAlias : pTab->zName;
          assert( zTabName!=0 );
          if( sqlite3StrICmp(zTabName, zTab)!=0 ){
            continue;
          }







|
|
<
|







252
253
254
255
256
257
258
259
260

261
262
263
264
265
266
267
268
              pMatch = pItem;
              pExpr->iColumn = j;
              hit = 1;
            }
          }
          if( hit || zTab==0 ) continue;
        }
        if( zDb && (pTab->pSchema || pSchema) ){
          int ii = sqlite3SchemaToIndex2(db, pTab->pSchema, pItem->zDatabase);

          if( ii!=iDb ) continue;
        }
        if( zTab ){
          const char *zTabName = pItem->zAlias ? pItem->zAlias : pTab->zName;
          assert( zTabName!=0 );
          if( sqlite3StrICmp(zTabName, zTab)!=0 ){
            continue;
          }