- Notifications
You must be signed in to change notification settings - Fork5
Commit41d2c08
committed
Make hstore_to_jsonb_loose match hstore_to_json_loose on what's a number.
Commite09996f removed some ad-hoc code in hstore_to_json_loosethat determined whether an hstore value string looked like a number,in favor of calling the JSON parser's is-it-a-number code. However,it neglected the fact that the exact same code appeared inhstore_to_jsonb_loose.This is not a bug, exactly, because the requirements on the two functionsare not the same: hstore_to_json_loose must accept only syntactically legalJSON numbers as numbers, or it will produce invalid JSON output, as per bug#12070 which spawned the prior commit. But hstore_to_jsonb_loose couldaccept anything that numeric_in will eat, other than Inf and NaN.Nonetheless it seems surprising and arbitrary that the two functions don'tuse the same rules for what is a number versus what is a string; especiallysince they did use the same rules before the aforesaid commit. For onething, that means that doing hstore_to_json_loose and then casting to jsonbcan produce results different from doing just hstore_to_jsonb_loose.Hence, change hstore_to_jsonb_loose's logic to match hstore_to_json_loose,ie, hstore values are treated as numbers when they match the JSON syntaxfor numbers.No back-patch, since this is more in the nature of a definitional changethan a bug fix.1 parent52b6364 commit41d2c08
1 file changed
+1
-42
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1387 | 1387 | | |
1388 | 1388 | | |
1389 | 1389 | | |
1390 | | - | |
1391 | 1390 | | |
1392 | 1391 | | |
1393 | 1392 | | |
| |||
1423 | 1422 | | |
1424 | 1423 | | |
1425 | 1424 | | |
1426 | | - | |
1427 | 1425 | | |
1428 | | - | |
1429 | 1426 | | |
1430 | 1427 | | |
1431 | | - | |
1432 | | - | |
1433 | | - | |
1434 | | - | |
1435 | | - | |
1436 | | - | |
1437 | | - | |
1438 | | - | |
1439 | | - | |
1440 | | - | |
1441 | | - | |
1442 | | - | |
1443 | | - | |
1444 | | - | |
1445 | | - | |
1446 | | - | |
1447 | | - | |
1448 | | - | |
1449 | | - | |
1450 | | - | |
1451 | | - | |
1452 | | - | |
1453 | | - | |
1454 | | - | |
1455 | | - | |
1456 | | - | |
1457 | | - | |
1458 | | - | |
1459 | | - | |
1460 | | - | |
1461 | | - | |
1462 | | - | |
1463 | | - | |
1464 | | - | |
1465 | | - | |
1466 | | - | |
1467 | | - | |
1468 | | - | |
1469 | | - | |
| 1428 | + | |
1470 | 1429 | | |
1471 | 1430 | | |
1472 | 1431 | | |
| |||
0 commit comments
Comments
(0)