Skip to content

Commit ed7a6ac

Browse files
author
Nikita Glukhov
committed
Remove JsonValue.val.binary.len field
1 parent c4bd4d8 commit ed7a6ac

File tree

6 files changed

+6
-13
lines changed

6 files changed

+6
-13
lines changed

src/backend/utils/adt/json.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2767,7 +2767,6 @@ jsontFillValue(JsonIterator **pit, JsonValue *res, bool skipNested,
27672767
int len;
27682768

27692769
res->type = jbvBinary;
2770-
res->val.binary.len = 0;
27712770
res->val.binary.data = JsonContainerAlloc();
27722771
res->val.binary.uniquified = false;
27732772

@@ -2789,8 +2788,6 @@ jsontFillValue(JsonIterator **pit, JsonValue *res, bool skipNested,
27892788
: jbvArray,
27902789
-1);
27912790

2792-
res->val.binary.len = res->val.binary.data->len;
2793-
27942791
if (skipNested)
27952792
return false;
27962793

src/backend/utils/adt/json_generic.c

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,6 @@ JsonValueWrapInBinary(const JsonValue *val, JsonValue *bin)
160160

161161
bin->type = jbvBinary;
162162
bin->val.binary.data = jc;
163-
bin->val.binary.len = jc->len;
164163
bin->val.binary.uniquified = JsonValueIsUniquified(val);
165164

166165
return bin;
@@ -405,7 +404,6 @@ jsonvArrayIteratorNext(JsonIterator **it, JsonValue *res, bool skipNested)
405404
{
406405
Assert(res->type == jbvArray || res->type == jbvObject);
407406
res->val.binary.data = JsonValueToContainer(val);
408-
res->val.binary.len = 0;
409407
res->val.binary.uniquified = JsonValueIsUniquified(val);
410408
res->type = jbvBinary;
411409
}
@@ -458,7 +456,6 @@ jsonvObjectIteratorNext(JsonIterator **it, JsonValue *res, bool skipNested)
458456
{
459457
Assert(res->type == jbvArray || res->type == jbvObject);
460458
res->val.binary.data = JsonValueToContainer(&pair->value);
461-
res->val.binary.len = 0;
462459
res->val.binary.uniquified =
463460
JsonValueIsUniquified(&pair->value);
464461
res->type = jbvBinary;
@@ -713,7 +710,6 @@ JsonToJsonValue(Json *json, JsonValue *jv)
713710

714711
jv->type = jbvBinary;
715712
jv->val.binary.data = &json->root;
716-
jv->val.binary.len = json->root.len;
717713
jv->val.binary.uniquified = json->root.ops != &jsontContainerOps;
718714

719715
return jv;

src/backend/utils/adt/jsonb.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -554,7 +554,8 @@ JsonbToCStringWorker(StringInfo out, JsonbContainer *in, int estimated_len,
554554
{
555555
first = false;
556556
if (v.type == jbvBinary)
557-
JsonbToCString(out, v.val.binary.data, v.val.binary.len);
557+
JsonbToCString(out, v.val.binary.data,
558+
v.val.binary.data->len);
558559
else
559560
jsonb_put_escaped_value(out, &v);
560561
}
@@ -580,7 +581,8 @@ JsonbToCStringWorker(StringInfo out, JsonbContainer *in, int estimated_len,
580581
add_indent(out, use_indent, level);
581582

582583
if (v.type == jbvBinary)
583-
JsonbToCString(out, v.val.binary.data, v.val.binary.len);
584+
JsonbToCString(out, v.val.binary.data,
585+
v.val.binary.data->len);
584586
else
585587
jsonb_put_escaped_value(out, &v);
586588
break;

src/backend/utils/adt/jsonb_util.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -632,7 +632,6 @@ fillJsonbValue(const JsonbContainer *container, int index,
632632
(JsonbContainer *)(base_addr + INTALIGN(offset)),
633633
getJsonbLength(container, index) -
634634
(INTALIGN(offset) - offset));
635-
result->val.binary.len = result->val.binary.data->len;
636635
result->val.binary.uniquified = true;
637636
}
638637
}

src/backend/utils/adt/jsonfuncs.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2911,7 +2911,7 @@ populate_scalar(ScalarIOData *io, Oid typid, int32 typmod, JsValue *jsv)
29112911
str = JsonbToCString(NULL, JsonValueToContainer(jbv), 0);
29122912
else if (jbv->type == jbvBinary)
29132913
str = JsonbToCString(NULL, jbv->val.binary.data,
2914-
jbv->val.binary.len);
2914+
jbv->val.binary.data->len);
29152915
else
29162916
elog(ERROR, "unrecognized jsonb type: %d", (int) jbv->type);
29172917
}
@@ -3335,7 +3335,7 @@ populate_record_worker(FunctionCallInfo fcinfo, const char *funcname,
33353335
/* fill binary jsonb value pointing to jb */
33363336
jbv.type = jbvBinary;
33373337
jbv.val.binary.data = &jb->root;
3338-
jbv.val.binary.len = jb->root.len;
3338+
jbv.val.binary.uniquified = true;
33393339
}
33403340

33413341
rettuple = populate_composite(&cache->io, tupType, tupTypmod,

src/include/utils/jsonb.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,6 @@ struct JsonbValue
295295

296296
struct
297297
{
298-
int len; /* FIXME remove */
299298
bool uniquified;
300299
const struct JsonContainerData *data;
301300
} binary; /* Array or object, in on-disk format */

0 commit comments

Comments
 (0)