2022-07-12 11:18:16 +03:00
|
|
|
package postgres
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/wader/fq/format"
|
|
|
|
"github.com/wader/fq/pkg/decode"
|
2022-07-19 08:58:31 +03:00
|
|
|
"github.com/wader/fq/pkg/interp"
|
2022-07-12 11:18:16 +03:00
|
|
|
_ "github.com/wader/fq/pkg/scalar"
|
|
|
|
)
|
|
|
|
|
|
|
|
func init() {
|
2022-07-19 08:58:31 +03:00
|
|
|
interp.RegisterFormat(decode.Format{
|
2022-07-12 11:18:16 +03:00
|
|
|
Name: format.PGWALPAGE,
|
|
|
|
Description: "PostgreSQL write-ahead page",
|
|
|
|
DecodeFn: walpageDecode,
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
//const XLOG_BLCKSZ = 8192
|
|
|
|
|
|
|
|
func walpageDecode(d *decode.D, in interface{}) interface{} {
|
|
|
|
|
|
|
|
d.Endian = decode.LittleEndian
|
|
|
|
|
|
|
|
pageHeaders := d.FieldArrayValue("XLogPageHeaders")
|
|
|
|
_ = pageHeaders.FieldStruct("XLogPageHeaderData", decodeXLogPageHeaderData)
|
|
|
|
|
|
|
|
return nil
|
|
|
|
}
|