Fixed 267U.pre2
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
import { db } from "../../../../db/postgre.js";
|
||||
import define from "../../define.js";
|
||||
export const meta = {
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
tags: [
|
||||
"admin"
|
||||
],
|
||||
res: {
|
||||
type: "object",
|
||||
optional: false,
|
||||
nullable: false,
|
||||
example: {
|
||||
migrations: {
|
||||
count: 66,
|
||||
size: 32768
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
export const paramDef = {
|
||||
type: "object",
|
||||
properties: {},
|
||||
required: []
|
||||
};
|
||||
export default define(meta, paramDef, async ()=>{
|
||||
const sizes = await db.query(`
|
||||
SELECT relname AS "table", reltuples as "count", pg_total_relation_size(C.oid) AS "size"
|
||||
FROM pg_class C LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
|
||||
WHERE nspname NOT IN ('pg_catalog', 'information_schema')
|
||||
AND C.relkind <> 'i'
|
||||
AND nspname !~ '^pg_toast';`).then((recs)=>{
|
||||
const res = {};
|
||||
for (const rec of recs){
|
||||
res[rec.table] = {
|
||||
count: parseInt(rec.count, 10),
|
||||
size: parseInt(rec.size, 10)
|
||||
};
|
||||
}
|
||||
return res;
|
||||
});
|
||||
return sizes;
|
||||
});
|
||||
Reference in New Issue
Block a user