SQLite
Hex Artifact Content
Not logged in

Artifact 28fef2d3485dc464d5421ee48c8874d25bb281cf:

Ticket change [28fef2d348] - New ticket [d02e1406a58ea02de21627afaea1a5acd3a2e673|d02e1406a5] LEFT JOIN with an OR in the ON clause causes segfault. by drh 2012-10-04 15:26:42.
0000: 44 20 32 30 31 32 2d 31 30 2d 30 34 54 31 35 3a  D 2012-10-04T15:
0010: 32 36 3a 34 32 2e 32 34 33 0a 4a 20 63 6f 6d 6d  26:42.243.J comm
0020: 65 6e 74 20 54 68 65 5c 73 66 6f 6c 6c 6f 77 69  ent The\sfollowi
0030: 6e 67 5c 73 53 51 4c 5c 73 72 65 73 75 6c 74 73  ng\sSQL\sresults
0040: 5c 73 69 6e 5c 73 61 5c 73 73 65 67 66 61 75 6c  \sin\sa\ssegfaul
0050: 74 5c 73 77 68 69 6c 65 5c 73 72 75 6e 6e 69 6e  t\swhile\srunnin
0060: 67 5c 73 74 68 65 5c 73 53 45 4c 45 43 54 5c 73  g\sthe\sSELECT\s
0070: 73 74 61 74 65 6d 65 6e 74 2e 5c 72 5c 6e 5c 72  statement.\r\n\r
0080: 5c 6e 3c 62 6c 6f 63 6b 71 75 6f 74 65 3e 3c 70  \n<blockquote><p
0090: 72 65 3e 5c 72 5c 6e 43 52 45 41 54 45 5c 73 54  re>\r\nCREATE\sT
00a0: 41 42 4c 45 5c 73 74 31 28 61 2c 62 2c 63 29 3b  ABLE\st1(a,b,c);
00b0: 5c 72 5c 6e 49 4e 53 45 52 54 5c 73 49 4e 54 4f  \r\nINSERT\sINTO
00c0: 5c 73 74 31 5c 73 56 41 4c 55 45 53 28 31 2c 32  \st1\sVALUES(1,2
00d0: 2c 33 29 2c 5c 73 28 34 2c 35 2c 36 29 3b 5c 72  ,3),\s(4,5,6);\r
00e0: 5c 6e 43 52 45 41 54 45 5c 73 54 41 42 4c 45 5c  \nCREATE\sTABLE\
00f0: 73 74 32 28 64 2c 65 2c 66 29 3b 5c 72 5c 6e 49  st2(d,e,f);\r\nI
0100: 4e 53 45 52 54 5c 73 49 4e 54 4f 5c 73 74 32 5c  NSERT\sINTO\st2\
0110: 73 56 41 4c 55 45 53 28 33 2c 36 2c 39 29 2c 5c  sVALUES(3,6,9),\
0120: 73 28 34 2c 38 2c 31 32 29 3b 5c 72 5c 6e 53 45  s(4,8,12);\r\nSE
0130: 4c 45 43 54 5c 73 2a 5c 73 46 52 4f 4d 5c 73 74  LECT\s*\sFROM\st
0140: 31 5c 73 41 53 5c 73 78 5c 73 4c 45 46 54 5c 73  1\sAS\sx\sLEFT\s
0150: 4a 4f 49 4e 5c 73 74 32 5c 73 41 53 5c 73 79 5c  JOIN\st2\sAS\sy\
0160: 73 4f 4e 5c 73 28 79 2e 64 3d 78 2e 63 29 5c 73  sON\s(y.d=x.c)\s
0170: 4f 52 5c 73 28 79 2e 65 3d 78 2e 62 29 3b 5c 72  OR\s(y.e=x.b);\r
0180: 5c 6e 3c 2f 62 6c 6f 63 6b 71 75 6f 74 65 3e 3c  \n</blockquote><
0190: 2f 70 72 65 3e 5c 72 5c 6e 5c 72 5c 6e 54 68 69  /pre>\r\n\r\nThi
01a0: 73 5c 73 70 72 6f 62 6c 65 6d 5c 73 77 61 73 5c  s\sproblem\swas\
01b0: 73 69 6e 69 74 69 61 6c 6c 79 5c 73 72 65 70 6f  sinitially\srepo
01c0: 72 74 65 64 5c 73 6f 6e 5c 73 74 68 65 5c 73 5b  rted\son\sthe\s[
01d0: 68 74 74 70 3a 2f 2f 77 77 77 2e 6d 61 69 6c 2d  http://www.mail-
01e0: 61 72 63 68 69 76 65 2e 63 6f 6d 2f 73 71 6c 69  archive.com/sqli
01f0: 74 65 2d 75 73 65 72 73 25 34 30 73 71 6c 69 74  te-users%40sqlit
0200: 65 2e 6f 72 67 2f 6d 73 67 37 32 38 39 39 2e 68  e.org/msg72899.h
0210: 74 6d 6c 5c 73 7c 5c 73 6d 61 69 6c 69 6e 67 5c  tml\s|\smailing\
0220: 73 6c 69 73 74 5d 2e 5c 73 5c 73 54 68 65 5c 73  slist].\s\sThe\s
0230: 70 72 6f 62 6c 65 6d 5c 73 5c 72 5c 6e 61 70 70  problem\s\r\napp
0240: 65 61 72 73 5c 73 74 6f 5c 73 68 61 76 65 5c 73  ears\sto\shave\s
0250: 62 65 65 6e 5c 73 69 6e 74 72 6f 64 75 63 65 64  been\sintroduced
0260: 5c 73 62 79 5c 73 63 68 65 63 6b 2d 69 6e 5c 73  \sby\scheck-in\s
0270: 5b 36 32 36 37 38 62 65 33 64 66 33 35 63 64 63  [62678be3df35cdc
0280: 62 30 39 31 5d 5c 73 61 6e 64 5c 73 66 69 72 73  b091]\sand\sfirs
0290: 74 5c 72 5c 6e 61 70 70 65 61 72 65 64 5c 73 69  t\r\nappeared\si
02a0: 6e 5c 73 76 65 72 73 69 6f 6e 5c 73 33 2e 37 2e  n\sversion\s3.7.
02b0: 31 34 2e 0a 4a 20 64 65 74 65 63 74 65 64 20 41  14..J detected A
02c0: 70 70 6c 69 63 61 74 69 6f 6e 5f 46 61 75 6c 74  pplication_Fault
02d0: 0a 4a 20 66 6f 75 6e 64 69 6e 20 33 2e 37 2e 31  .J foundin 3.7.1
02e0: 34 0a 4a 20 73 65 76 65 72 69 74 79 20 43 72 69  4.J severity Cri
02f0: 74 69 63 61 6c 0a 4a 20 73 74 61 74 75 73 20 4f  tical.J status O
0300: 70 65 6e 0a 4a 20 73 75 62 73 79 73 74 65 6d 20  pen.J subsystem 
0310: 55 6e 6b 6e 6f 77 6e 0a 4a 20 74 69 74 6c 65 20  Unknown.J title 
0320: 4c 45 46 54 5c 73 4a 4f 49 4e 5c 73 77 69 74 68  LEFT\sJOIN\swith
0330: 5c 73 61 6e 5c 73 4f 52 5c 73 69 6e 5c 73 74 68  \san\sOR\sin\sth
0340: 65 5c 73 4f 4e 5c 73 63 6c 61 75 73 65 5c 73 63  e\sON\sclause\sc
0350: 61 75 73 65 73 5c 73 73 65 67 66 61 75 6c 74 0a  auses\ssegfault.
0360: 4a 20 74 79 70 65 20 43 6f 64 65 5f 44 65 66 65  J type Code_Defe
0370: 63 74 0a 4b 20 64 30 32 65 31 34 30 36 61 35 38  ct.K d02e1406a58
0380: 65 61 30 32 64 65 32 31 36 32 37 61 66 61 65 61  ea02de21627afaea
0390: 31 61 35 61 63 64 33 61 32 65 36 37 33 0a 55 20  1a5acd3a2e673.U 
03a0: 64 72 68 0a 5a 20 35 37 32 32 31 38 32 35 38 35  drh.Z 5722182585
03b0: 30 33 61 35 63 63 34 34 35 36 39 64 37 62 31 35  03a5cc44569d7b15
03c0: 63 32 35 65 34 66 0a                             c25e4f.