Re: [EXTERNAL] Re: COALESCE() does not short-circuit sometimes
"Doug" <[email protected]> Thu, 12 Mar 2020 07:32:25 -0700
| Newsgroups | gmane.comp.db.sqlite.general |
|---|---|
| Message-ID | <[email protected]> |
UmljaGFyZCwgd2hhdCBkb2VzIHRoZSBleHBsYWluIGxvb2sgbGlrZSB3aXRoIHlvdXIgY29kZSBj aGFuZ2UsIHBsZWFzZS4KRG91ZwoKPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206 IHNxbGl0ZS11c2VycyA8c3FsaXRlLXVzZXJzLWJvdW5jZXNAbWFpbGluZ2xpc3RzLnNxbGl0ZS5v cmc+Cj4gT24gQmVoYWxmIE9mIFJpY2hhcmQgSGlwcAo+IFNlbnQ6IFRodXJzZGF5LCBNYXJjaCAx MiwgMjAyMCAzOjA5IEFNCj4gVG86IFNRTGl0ZSBtYWlsaW5nIGxpc3QgPHNxbGl0ZS11c2Vyc0Bt YWlsaW5nbGlzdHMuc3FsaXRlLm9yZz4KPiBTdWJqZWN0OiBSZTogW3NxbGl0ZV0gW0VYVEVSTkFM XSBSZTogQ09BTEVTQ0UoKSBkb2VzIG5vdCBzaG9ydC0KPiBjaXJjdWl0IHNvbWV0aW1lcwo+IAo+ IE9uIDMvMTIvMjAsIEhpY2sgR3VudGVyIDxoaWNrQHNjaWdhbWVzLmF0PiB3cm90ZToKPiA+IEV4 YWN0bHkgd2hhdCBJIGdhaW5lZCBmcm9tIHRoZSBFWFBMQUlOIG91dHB1dC4KPiA+Cj4gPiBUaGUg U1FMICJjb21waWxlciIgaXMgZXh0cmFjdGluZyB0aGUgY29uc3RhbnQgZXhwcmVzc2lvbgo+IEFC UyguLi4pIGFuZAo+ID4gZXZhbHVhdGluZyBpdCBpbiB0aGUgcHJvZ3JhbSBwcm9sb2cgKHdoZXJl IHNjaGVtYSBpcyBjaGVja2VkIGFuZAo+IGxvY2tzCj4gPiB0YWtlbikuIFNlZSBpbnN0cnVjdGlv bnMgMTEgYW5kIDEyCj4gCj4gRXhhY3RseS4gIFNRTGl0ZSB0cmllcyB0byBmYWN0b3Igb3V0IGNv bnN0YW50IGV4cHJlc3Npb25zIGludG8gdGhlCj4gcHJvbG9ndWUgc28gdGhhdCB0aGV5IGFyZSBv bmx5IGV2YWx1YXRlZCBvbmNlLCByYXRoZXIgdGhhbiBvbmNlCj4gZm9yCj4gZWFjaCByb3cuICBU aGlzIGlzIGEgcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uLgo+IAo+IEEgdHJhZGl0aW9uYWwgY29t cGlsZXIgbGlrZSBnY2Mgb3IgY2xhbmcgd291bGQgZG8gYW4gZW5vcm1vdXMKPiBhbW91bnQKPiBv ZiBjb2RlIG1vdmVtZW50LCBzaW1pbGFyIHRvIHRoaXMsIGFzIHdlbGwgYXMgb3RoZXIKPiBzaW1w bGlmaWNhdGlvbnMsCj4gdG8gbWFrZSB0aGUgY29kZSBydW4gZmFzdGVyLCBlc3BlY2lhbGx5IHdp dGggb3B0aW9ucyBsaWtlIC1PMi4KPiBCdXQKPiB0aGUgY29tcGlsZXIgZm9yIFNRTGl0ZSBkb2Vz IG5vdCBoYXZlIHRoYXQgbHV4dXJ5LiAgRGVwZW5kaW5nIG9uCj4gdGhlCj4gcXVlcnksIHRoZSB0 aW1lIHNwZW50IGNvbXBpbGluZyB0aGUgcXVlcnkgaW50byBieXRlIGNvZGUgY2FuIGJlIGEKPiBz aWduaWZpY2FudCBmcmFjdGlvbiBvZiB0aGUgdG90YWwgcnVubmluZyB0aW1lLiAgSGVuY2UsIHRo ZQo+IGNvbXBpbGVyCj4gbmVlZHMgdG8gYmUgdmVyeSBmYXN0LiAgVGhpcyBpcyBhbiBvbmdvaW5n IGRlc2lnbiBzdHJ1Z2dsZSB3aXRoCj4gU1FMaXRlOiAgaG93IG1hbnkgQ1BVIGN5Y2xlcyBkbyB3 ZSBidXJuIHRyeWluZyB0byBvcHRpbWl6ZSB0aGUKPiBieXRlY29kZSB3aXRoIHRoZSBob3BlcyBv ZiBtYWtpbmcgdXAgdGhvc2UgbG9zdCBDUFUgY3ljbGVzIHdpdGggYQo+IHNob3J0ZXIgcnVuLXRp bWU/ICBPcHRpbWl6YXRpb24gaXMgYWxzbyBjb25zdHJhaW5lZCBieSB0aGUgZGVzaXJlCj4gdG8K PiBrZWVwIHRoZSBTUUxpdGUgY29kZSBzbWFsbC4gIEhlbmNlLCB0aGUgb3B0aW1pemF0aW9ucyBh cHBsaWVkIGJ5Cj4gdGhlCj4gU1FMaXRlIGJ5dGUtY29kZSBjb21waWxlciBhcmUgcmVsYXRpdmVs eSBzaW1wbGUsIHNvIHRoYXQgdGhleSBjYW4KPiBiZQo+IGltcGxlbWVudGVkIHdpdGggZmV3IENQ VSBjeWNsZXMgYW5kIHdpdGggZmV3IGJ5dGVzIG9mIG1hY2hpbmUKPiBjb2RlLgo+IAo+IFJldHVy bmluZyB0byB0aGUgb3JpZ2luYWwgZGlzY3Vzc2lvbjogIFRoZSB1bmRlcmx5aW5nIHByb2JsZW0g aXMKPiB0aGF0Cj4gdGhlIGNvbnN0YW50IGV4cHJlc3Npb25zIHRoYXQgZ2V0IG1vdmVkIGludG8g dGhlIHByb2xvZ3VlLCBpZiB0aGV5Cj4gaW52b2x2ZSBmdW5jdGlvbiBjYWxscywgbWlnaHQgdGhy b3cgYW4gZXhjZXB0aW9uLiAgVGhhdCBpcyB3aGF0IGlzCj4gaGFwcGVuaW5nIHdpdGggYWJzKC05 MjIzMzcyMDM2ODU0Nzc1ODA4KS4gIEFuZCB0aGF0IGV4Y2VwdGlvbgo+IHByZXZlbnRzCj4gdGhl IG1haW4gYm9keSBvZiB0aGUgY29kZSBmcm9tIHJ1bm5pbmcsIGV2ZW4gaWYgdGhlIG9mZmVuZGlu Zwo+IGV4cHJlc3Npb24gd2FzIG5ldmVyIGFjdHVhbGx5IGdvaW5nIHRvIGJlIHVzZWQuICBUaGUg c29sdXRpb24gaXMKPiB0bwo+IG5vdCBmYWN0b3Igb3V0IGV4cHJlc3Npb25zIHRoYXQgdXNlIGZ1 bmN0aW9ucywgYnV0IGluc3RlYWQgdXNlIHRoZQo+IE9QX09uY2Ugb3Bjb2RlIChodHRwczovL3d3 dy5zcWxpdGUub3JnL29wY29kZS5odG1sI09uY2UpIHRvCj4gcHJldmVudAo+IHRob3NlIGV4cHJl c3Npb25zIGZyb20gYmVpbmcgZXZhbHVhdGVkIG1vcmUgdGhhbiBvbmNlLiAgVGhpcyBzZWVtcwo+ IHRvCj4gbWFrZSBDb2FsZXNjZSAoYW5kIENBU0UuLi5FTkQpIHNob3J0LWNpcmN1aXQgYWdhaW4u ICBBbmQgaXQgYWxzbwo+IGZpeGVzCj4gdGlja2V0IGh0dHBzOi8vd3d3LnNxbGl0ZS5vcmcvc3Jj L2luZm8vM2M5ZWFkZDJhNmJhMGFhNQo+IAo+IFRoYXQgY2hhbmdlIGlzIGltcGxlbWVudGVkIGJ5 IGNoZWNrLWluCj4gaHR0cHM6Ly93d3cuc3FsaXRlLm9yZy9zcmMvaW5mby9jNWY5NmEwODVkYjk2 ODhhCj4gCj4gCj4gPgo+ID4gYXNxbD4gZXhwbGFpbiBzZWxlY3QgY29hbGVzY2UoKFNFTEVDVCAn aGVsbG8nKSxBQlMoLQo+IDkyMjMzNzIwMzY4NTQ3NzU4MDgpKTsKPiA+IGFkZHIgIG9wY29kZSAg ICAgICAgIHAxICAgIHAyICAgIHAzICAgIHA0ICAgICAgICAgICAgIHA1Cj4gY29tbWVudAo+ID4g LS0tLSAgLS0tLS0tLS0tLS0tLSAgLS0tLSAgLS0tLSAgLS0tLSAgLS0tLS0tLS0tLS0tLSAgLS0g IC0tLS0tLQo+IC0tLS0tLS0KPiA+IDAgICAgIEluaXQgICAgICAgICAgIDAgICAgIDExICAgIDAg ICAgICAgICAgICAgICAgICAgIDAwICBTdGFydAo+IGF0IDExCj4gPiAxICAgICBPbmNlICAgICAg ICAgICAwICAgICA2ICAgICAwICAgICAgICAgICAgICAgICAgICAwMAo+ID4gMiAgICAgTnVsbCAg ICAgICAgICAgMCAgICAgMiAgICAgMiAgICAgICAgICAgICAgICAgICAgMDAKPiByWzIuLjJdPU5V TEw7IEluaXQKPiA+IHN1YnF1ZXJ5IHJlc3VsdAo+ID4gMyAgICAgSW50ZWdlciAgICAgICAgMSAg ICAgMyAgICAgMCAgICAgICAgICAgICAgICAgICAgMDAKPiByWzNdPTE7IExJTUlUCj4gPiBjb3Vu dGVyCj4gPiA0ICAgICBTdHJpbmc4ICAgICAgICAwICAgICAyICAgICAwICAgICBoZWxsbyAgICAg ICAgICAwMAo+IHJbMl09J2hlbGxvJwo+ID4gNSAgICAgRGVjckp1bXBaZXJvICAgMyAgICAgNiAg ICAgMCAgICAgICAgICAgICAgICAgICAgMDAgIGlmICgtLQo+IHJbM10pPT0wCj4gPiBnb3RvIDYK PiA+IDYgICAgIFNDb3B5ICAgICAgICAgIDIgICAgIDEgICAgIDAgICAgICAgICAgICAgICAgICAg IDAwCj4gclsxXT1yWzJdCj4gPiA3ICAgICBOb3ROdWxsICAgICAgICAxICAgICA5ICAgICAwICAg ICAgICAgICAgICAgICAgICAwMCAgaWYKPiByWzFdIT1OVUxMIGdvdG8KPiA+IDkKPiA+IDggICAg IFNDb3B5ICAgICAgICAgIDQgICAgIDEgICAgIDAgICAgICAgICAgICAgICAgICAgIDAwCj4gclsx XT1yWzRdCj4gPiA5ICAgICBSZXN1bHRSb3cgICAgICAxICAgICAxICAgICAwICAgICAgICAgICAg ICAgICAgICAwMAo+IG91dHB1dD1yWzFdCj4gPiAxMCAgICBIYWx0ICAgICAgICAgICAwICAgICAw ICAgICAwICAgICAgICAgICAgICAgICAgICAwMAo+ID4gMTEgICAgSW50NjQgICAgICAgICAgMCAg ICAgNSAgICAgMCAgICAgLTkyMjMzNzIwMzY4NTQ3NzU4MDggIDAwCj4gPiByWzVdPS05MjIzMzcy MDM2ODU0Nzc1ODA4Cj4gPiAxMiAgICBGdW5jdGlvbjAgICAgICAxICAgICA1ICAgICA0ICAgICBh YnMoMSkgICAgICAgICAwMQo+IHJbNF09ZnVuYyhyWzVdKQo+ID4gMTMgICAgR290byAgICAgICAg ICAgMCAgICAgMSAgICAgMCAgICAgICAgICAgICAgICAgICAgMDAKPiA+Cj4gPiAtLS0tLVVyc3By w7xuZ2xpY2hlIE5hY2hyaWNodC0tLS0tCj4gPiBWb246IHNxbGl0ZS11c2VycyBbbWFpbHRvOnNx bGl0ZS11c2Vycy0KPiBib3VuY2VzQG1haWxpbmdsaXN0cy5zcWxpdGUub3JnXSBJbQo+ID4gQXVm dHJhZyB2b24gSmF5IEtyZWliaWNoCj4gPiBHZXNlbmRldDogTWl0dHdvY2gsIDExLiBNw6RyeiAy MDIwIDIwOjUzCj4gPiBBbjogU1FMaXRlIG1haWxpbmcgbGlzdCA8c3FsaXRlLXVzZXJzQG1haWxp bmdsaXN0cy5zcWxpdGUub3JnPgo+ID4gQ2M6IDM4ODY2NDI0ZjhmNmZjNDI5MTc0ZmYxYWIyMzU1 ZjBiQG1haWwuZGVzc3VzLmNvbQo+ID4gQmV0cmVmZjogW0VYVEVSTkFMXSBSZTogW3NxbGl0ZV0g Q09BTEVTQ0UoKSBkb2VzIG5vdCBzaG9ydC0KPiBjaXJjdWl0Cj4gPiBzb21ldGltZXMKPiA+Cj4g Pgo+ID4+IE9uIE1hciAxMSwgMjAyMCwgYXQgMjoxNiBQTSwgSnVzdGluIE5nCj4gPGp1c3Rpbi5u Zy4xOTk0QG91dGxvb2suY29tPgo+ID4+IHdyb3RlOgo+ID4+Cj4gPj4gVGhleSBnZW5lcmFsbHkg ZG8gc2hvcnQtY2lyY3VpdCBidXQgdGhlcmUgYXJlIGVkZ2UgY2FzZXMgd2hlcmUKPiB0aGV5IGRv bid0Lgo+ID4+IEl0IGlzbid0IGVudGlyZWx5IGludHVpdGl2ZSB0byBtZSB3aGF0IHRoZSBjb25k aXRpb25zIGFyZSwKPiB0aG91Z2guCj4gPj4KPiA+Cj4gPgo+ID4gIkFCUygtOTIyMzM3MjAzNjg1 NDc3NTgwOCkiIGlzIGEgY29uc3RhbnQgZXhwcmVzc2lvbiwgYW5kIGFzCj4gc3VjaCwgaXQgbWFr ZXMKPiA+IHNlbnNlIHRoYXQgaXQgaXMgZXZhbHVhdGUgZHVyaW5nIHRoZSBwYXJzZS9wcmVwYXJl IHBoYXNlIG9mIHRoZQo+IHByb2Nlc3NpbmcsCj4gPiBub3QgdGhlIGV4ZWN1dGlvbi4gIFRoZXJl IGFyZSBzaW1pbGFyIHByb2JsZW1zIGluIG1vcmUKPiB0cmFkaXRpb25hbCBsYW5ndWFnZXMKPiA+ IChlc3BlY2lhbGx5IHNjcmlwdGluZyBsYW5ndWFnZXMpIHRoYXQgYXR0ZW1wdCB0byBvcHRpbWl6 ZSBvdXQgb3IKPiBwcmUtY29tcHV0ZQo+ID4gY29uc3RhbnQgZXhwcmVzc2lvbnMuCj4gPgo+ID4g SWYgdGhhdOKAmXMgdGhlIGNhc2UsIHRoZW4gdGhlIGlzc3VlIGlzIG5vdCBzbyBtdWNoIHRoYXQg dGhlCj4gQ09BTEVTQ0UoKSBpcwo+ID4gZmFpbGluZyB0byBzaG9ydC1jaXJjdWl0LCBidXQgcmF0 aGVyIHRoYW4gdGhlIFNRTCBzdGF0ZW1lbnQKPiBmYWlsaW5nIHRvCj4gPiDigJxjb21waWxpbmfi gJ0gYW4gaW52YWxpZCBzdGF0ZW1lbnQuCj4gPgo+ID4gSWYgeW914oCZcmUgZG9pbmcgdGhpcyBp biBjb2RlIGFzIHNlcGFyYXRlIHByZXBhcmUvc3RlcC9maW5hbGl6ZSwKPiBpdCB3b3VsZCBiZQo+ ID4gaW50ZXJlc3RpbmcgdG8gc2VlIHdoZXJlIGl0IGZhaWxzLiAgTXkgZ3Vlc3MgaXMgcHJlcGFy ZSwgbm90Cj4gc3RlcC4KPiA+Cj4gPiAgIC1qCj4gPgo+ID4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+IHNxbGl0ZS11c2VycyBtYWlsaW5nIGxpc3QK PiA+IHNxbGl0ZS11c2Vyc0BtYWlsaW5nbGlzdHMuc3FsaXRlLm9yZwo+ID4gaHR0cDovL21haWxp bmdsaXN0cy5zcWxpdGUub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9zcWxpdGUtCj4gdXNl cnMKPiA+Cj4gPgo+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xwo+ID4gIEd1bnRlciBIaWNrIHwgU29mdHdhcmUgRW5naW5lZXIgfCBTY2llbnRpZmljIEdhbWVz Cj4gSW50ZXJuYXRpb25hbCBHbWJIIHwKPiA+IEtsaXRzY2hnYXNzZSAyLTQsIEEtMTEzMCBWaWVu bmEgfCBGTiAxNTcyODQgYSwgSEcgV2llbiwgRFZSOgo+IDA0MzAwMTMgfCAoTykKPiA+ICs0MyAx IDgwMTAwIC0gMAo+ID4KPiA+IE1heSBiZSBwcml2aWxlZ2VkLiBNYXkgYmUgY29uZmlkZW50aWFs LiBQbGVhc2UgZGVsZXRlIGlmIG5vdCB0aGUKPiBhZGRyZXNzZWUuCj4gPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4gc3FsaXRlLXVzZXJzIG1haWxp bmcgbGlzdAo+ID4gc3FsaXRlLXVzZXJzQG1haWxpbmdsaXN0cy5zcWxpdGUub3JnCj4gPiBodHRw Oi8vbWFpbGluZ2xpc3RzLnNxbGl0ZS5vcmcvY2dpLWJpbi9tYWlsbWFuL2xpc3RpbmZvL3NxbGl0 ZS0KPiB1c2Vycwo+ID4KPiAKPiAKPiAtLQo+IEQuIFJpY2hhcmQgSGlwcAo+IGRyaEBzcWxpdGUu b3JnCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBz cWxpdGUtdXNlcnMgbWFpbGluZyBsaXN0Cj4gc3FsaXRlLXVzZXJzQG1haWxpbmdsaXN0cy5zcWxp dGUub3JnCj4gaHR0cDovL21haWxpbmdsaXN0cy5zcWxpdGUub3JnL2NnaS1iaW4vbWFpbG1hbi9s aXN0aW5mby9zcWxpdGUtCj4gdXNlcnMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCnNxbGl0ZS11c2VycyBtYWlsaW5nIGxpc3QKc3FsaXRlLXVzZXJzQG1h aWxpbmdsaXN0cy5zcWxpdGUub3JnCmh0dHA6Ly9tYWlsaW5nbGlzdHMuc3FsaXRlLm9yZy9jZ2kt YmluL21haWxtYW4vbGlzdGluZm8vc3FsaXRlLXVzZXJzCg==