]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Do not do affinity transformations on inserts into an index for the
authordrh <drh@noemail.net>
Thu, 23 Jun 2011 16:18:26 +0000 (16:18 +0000)
committerdrh <drh@noemail.net>
Thu, 23 Jun 2011 16:18:26 +0000 (16:18 +0000)
manifestation of a view or subquery.  Fix for ticket [91e2e8ba6ff2e2].

FossilOrigin-Name: 0b3174e0b1364ccc31853dce02bce5f7d3d431db

manifest
manifest.uuid
src/delete.c

index aaff29d2eb3c48ae42269d7c1895b12ebf59de04..1613c5fb783f05b129250d15baa1d9239e95ca2f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Provide\sthe\sSQLITE_MAX_SCHEMA_RETRY\scompile-time\sparameter\sfor\sadjusting\sthe\nnumber\sof\sreparse\sattempts\safter\sa\sschema\schange.
-D 2011-06-23T01:42:53.188
+C Do\snot\sdo\saffinity\stransformations\son\sinserts\sinto\san\sindex\sfor\sthe\nmanifestation\sof\sa\sview\sor\ssubquery.\s\sFix\sfor\sticket\s[91e2e8ba6ff2e2].
+D 2011-06-23T16:18:26.708
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in c1d7a7f4fd8da6b1815032efca950e3d5125407e
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -132,7 +132,7 @@ F src/callback.c 0425c6320730e6d3981acfb9202c1bed9016ad1a
 F src/complete.c dc1d136c0feee03c2f7550bafc0d29075e36deac
 F src/ctime.c 7deec4534f3b5a0c3b4a4cbadf809d321f64f9c4
 F src/date.c d3c11de76392ea62637bfac0f4655889fc2f5a85
-F src/delete.c cecc926c70783452f3e8eb452c728291ce1a0b21
+F src/delete.c de45b70c0225e5d55b6edee2cdd460da92d401ca
 F src/expr.c ab46ab0f0c44979a8164ca31728d7d10ae5e8106
 F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb
 F src/fkey.c 9fabba17a4d4778dc660f0cb9d781fc86d7b9d41
@@ -948,7 +948,7 @@ F tool/symbols.sh bc2a3709940d47c8ac8e0a1fdf17ec801f015a00
 F tool/tostr.awk 11760e1b94a5d3dcd42378f3cc18544c06cfa576
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
 F tool/warnings.sh 347d974d143cf132f953b565fbc03026f19fcb4d
-P 07884cc218e6899efd163448ab116f296722f7b8
-R 1ebb2dce4c03a2b8c248fc12b488baac
+P 8dca748b23fa6f9abf47a186dcd1766f4dcf3ab7
+R 8a2977c4b779153cca71718dadb8abe7
 U drh
-Z ee2965e68946933dec7ceb7c99aa065f
+Z c7801050cf22d76dd7a2a355fe09f4f2
index fe91914370471c3ef7a5e839f8b27404fa169e08..157a733d62a3b4b8c14100c4340d1a4c5a3aded8 100644 (file)
@@ -1 +1 @@
-8dca748b23fa6f9abf47a186dcd1766f4dcf3ab7
\ No newline at end of file
+0b3174e0b1364ccc31853dce02bce5f7d3d431db
\ No newline at end of file
index a2df773af8bd9d2ce16bc8daa2b9045e714450ff..de6ed69bc793019c7dd8421516bc9482b8156089 100644 (file)
@@ -636,8 +636,9 @@ int sqlite3GenerateIndexKey(
     }
   }
   if( doMakeRec ){
+    const char *zAff = pTab->pSelect ? 0 : sqlite3IndexAffinityStr(v, pIdx);
     sqlite3VdbeAddOp3(v, OP_MakeRecord, regBase, nCol+1, regOut);
-    sqlite3VdbeChangeP4(v, -1, sqlite3IndexAffinityStr(v, pIdx), P4_TRANSIENT);
+    sqlite3VdbeChangeP4(v, -1, zAff, P4_TRANSIENT);
   }
   sqlite3ReleaseTempRange(pParse, regBase, nCol+1);
   return regBase;