MCPcopy Create free account
hub / github.com/documentdb/documentdb / WriteCoreStorageStats

Function WriteCoreStorageStats

pg_documentdb/src/commands/coll_stats.c:1052–1086  ·  view source on GitHub ↗

* WriteCoreStorageStats writes the collStats() storage output to the target writer. */

Source from the content-addressed store, hash-verified

1050 * WriteCoreStorageStats writes the collStats() storage output to the target writer.
1051 */
1052static void
1053WriteCoreStorageStats(CollStatsResult *result, pgbson_writer *writer)
1054{
1055 PgbsonWriterAppendInt32OrDouble(writer, "size", 4, result->size);
1056 PgbsonWriterAppendInt32OrDouble(writer, "count", 5, result->count);
1057 PgbsonWriterAppendInt32(writer, "avgObjSize", 10, result->avgObjSize);
1058 PgbsonWriterAppendInt32OrDouble(writer, "storageSize", 11, result->storageSize);
1059 PgbsonWriterAppendInt32(writer, "nindexes", 8, result->nindexes);
1060
1061 pgbson_array_writer arrayWriter;
1062 PgbsonWriterStartArray(writer, "indexBuilds", 11, &arrayWriter);
1063 ListCell *indexCell = NULL;
1064 foreach(indexCell, result->indexBuilds)
1065 {
1066 char *indexName = lfirst(indexCell);
1067 bson_value_t elementValue = {
1068 .value_type = BSON_TYPE_UTF8,
1069 .value.v_utf8.str = indexName,
1070 .value.v_utf8.len = strlen(indexName)
1071 };
1072 PgbsonArrayWriterWriteValue(&arrayWriter, &elementValue);
1073 }
1074 PgbsonWriterEndArray(writer, &arrayWriter);
1075
1076 PgbsonWriterAppendInt32OrDouble(writer, "totalIndexSize", 14, result->totalIndexSize);
1077 PgbsonWriterAppendInt32OrDouble(writer, "totalSize", 9, result->totalSize);
1078 PgbsonWriterAppendDocument(writer, "indexSizes", 10, result->indexSizes);
1079 if (result->analyzedCount > 0)
1080 {
1081 PgbsonWriterAppendInt32OrDouble(writer, "analyzedCount", 13,
1082 result->analyzedCount);
1083 }
1084
1085 PgbsonWriterAppendInt32OrDouble(writer, "scaleFactor", 11, result->scaleFactor);
1086}
1087
1088
1089/*

Callers 2

BuildResponseMessageFunction · 0.85

Calls 7

PgbsonWriterAppendInt32Function · 0.85
PgbsonWriterStartArrayFunction · 0.85
PgbsonWriterEndArrayFunction · 0.85
foreachFunction · 0.50

Tested by

no test coverage detected