Files
substrate/vendor/github.com/power-devops/perfstat/fsstat.go
T
Jet Chiang 4b12ce67b0 ateapi: Support Postgres as alternative persistence backend (#640)
Adds Postgres as an alternative persistence backend for ateapi as
proposed in #731. Currently this is opt-in with flags in ateapi or use
the `--store-backend=postgres` option in the install script.

Slack discussion:
https://cloud-native.slack.com/archives/C0B6M3E2J3D/p1785183769252679

Performance benchmark results for Postgres vs Redis:
https://docs.google.com/document/d/12-ko_BFHcBo_nJkx9f4B7zMbiiWKC2saGhMhZG3aQ-s/edit?usp=sharing

Benchmarks are not included in this PR, but you can reproduce the
results by following the doc above

Limitations and questions:

- This draft does not yet handle migrations, this might come as a follow
up
- It currently uses `testcontainers` for testing Postgres, but as a
result it adds a lot of dependencies

---------

Signed-off-by: Jet Chiang <pokyuen.jetchiang-ext@solo.io>
2026-08-12 14:00:10 -04:00

33 lines
495 B
Go

//go:build aix
// +build aix
package perfstat
/*
#include "c_helpers.h"
*/
import "C"
import (
"fmt"
)
func FileSystemStat() ([]FileSystem, error) {
var fsinfo *C.struct_fsinfo
var nmounts C.int
fsinfo = C.get_all_fs(&nmounts)
if nmounts <= 0 {
return nil, fmt.Errorf("No mounts found")
}
fs := make([]FileSystem, nmounts)
for i := 0; i < int(nmounts); i++ {
f := C.get_filesystem_stat(fsinfo, C.int(i))
if f != nil {
fs[i] = fsinfo2filesystem(f)
}
}
return fs, nil
}