Skip to content

Commit d1167d9

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

File tree

6 files changed

+7
-13
lines changed

6 files changed

+7
-13
lines changed

src/backend/utils/adt/json_generic.c

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -393,7 +393,6 @@ jsonvArrayIteratorNext(JsonIterator **it, JsonValue *res, bool skipNested)
393393
{
394394
Assert(res->type == jbvArray || res->type == jbvObject);
395395
res->val.binary.data = JsonValueToContainer(val);
396-
res->val.binary.len = 0;
397396
res->type = jbvBinary;
398397
}
399398
}
@@ -445,7 +444,6 @@ jsonvObjectIteratorNext(JsonIterator **it, JsonValue *res, bool skipNested)
445444
{
446445
Assert(res->type == jbvArray || res->type == jbvObject);
447446
res->val.binary.data = JsonValueToContainer(&pair->value);
448-
res->val.binary.len = 0;
449447
res->type = jbvBinary;
450448
}
451449
}
@@ -569,7 +567,6 @@ jsonvFindKeyInObject(JsonContainer *objc, const char *key, int len,
569567

570568
jv->type = jbvBinary;
571569
jv->val.binary.data = jc;
572-
jv->val.binary.len = jc->len;
573570
}
574571
else
575572
*jv = pair->value;
@@ -703,7 +700,6 @@ JsonToJsonValue(Json *json, JsonValue *jv)
703700

704701
jv->type = jbvBinary;
705702
jv->val.binary.data = &json->root;
706-
jv->val.binary.len = json->root.len;
707703

708704
return jv;
709705
}

src/backend/utils/adt/jsonb.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -523,7 +523,8 @@ JsonbToCStringWorker(StringInfo out, JsonbContainer *in, int estimated_len, bool
523523
{
524524
first = false;
525525
if (v.type == jbvBinary)
526-
JsonbToCString(out, v.val.binary.data, v.val.binary.len);
526+
JsonbToCString(out, v.val.binary.data,
527+
v.val.binary.data->len);
527528
else
528529
jsonb_put_escaped_value(out, &v);
529530
}
@@ -548,7 +549,8 @@ JsonbToCStringWorker(StringInfo out, JsonbContainer *in, int estimated_len, bool
548549
add_indent(out, use_indent, level);
549550

550551
if (v.type == jbvBinary)
551-
JsonbToCString(out, v.val.binary.data, v.val.binary.len);
552+
JsonbToCString(out, v.val.binary.data,
553+
v.val.binary.data->len);
552554
else
553555
jsonb_put_escaped_value(out, &v);
554556
break;

src/backend/utils/adt/jsonb_util.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ JsonContainerFlatten(JsonContainer *jc, JsonValueEncoder encoder,
138138
{
139139
jbv.type = jbvBinary;
140140
jbv.val.binary.data = jc;
141-
jbv.val.binary.len = jc->len;
141+
142142
binary = &jbv;
143143
}
144144

@@ -645,7 +645,6 @@ fillJsonbValue(const JsonbContainer *container, int index,
645645
(JsonbContainer *)(base_addr + INTALIGN(offset)),
646646
getJsonbLength(container, index) -
647647
(INTALIGN(offset) - offset));
648-
result->val.binary.len = result->val.binary.data->len;
649648
}
650649
}
651650

src/backend/utils/adt/jsonfuncs.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1774,7 +1774,7 @@ JsonbValueAsText(JsonbValue *v)
17741774

17751775
initStringInfo(&jtext);
17761776
(void) JsonbToCString(&jtext, v->val.binary.data,
1777-
v->val.binary.len);
1777+
v->val.binary.data->len);
17781778

17791779
return cstring_to_text_with_len(jtext.data, jtext.len);
17801780
}
@@ -2943,7 +2943,7 @@ populate_scalar(ScalarIOData *io, Oid typid, int32 typmod, JsValue *jsv)
29432943
PointerGetDatum(jbv->val.numeric)));
29442944
else if (jbv->type == jbvBinary)
29452945
str = JsonbToCString(NULL, jbv->val.binary.data,
2946-
jbv->val.binary.len);
2946+
jbv->val.binary.data->len);
29472947
else
29482948
elog(ERROR, "unrecognized jsonb type: %d", (int) jbv->type);
29492949
}
@@ -3492,7 +3492,6 @@ populate_record_worker(FunctionCallInfo fcinfo, const char *funcname,
34923492
/* fill binary jsonb value pointing to jb */
34933493
jbv.type = jbvBinary;
34943494
jbv.val.binary.data = &jb->root;
3495-
jbv.val.binary.len = jb->root.len;
34963495
}
34973496

34983497
rettuple = populate_composite(&cache->c.io.composite, cache->argtype,

src/backend/utils/adt/jsonpath_exec.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2622,7 +2622,6 @@ JsonbInitBinary(JsonbValue *jbv, Jsonb *jb)
26222622
{
26232623
jbv->type = jbvBinary;
26242624
jbv->val.binary.data = &jb->root;
2625-
jbv->val.binary.len = VARSIZE_ANY_EXHDR(jb);
26262625

26272626
return jbv;
26282627
}

src/include/utils/jsonb.h

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

292292
struct
293293
{
294-
int len; /* FIXME remove */
295294
const struct JsonContainerData *data;
296295
} binary; /* Array or object, in on-disk format */
297296

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy