2
0

pg_lsn.h 840 B

1234567891011121314151617181920212223242526272829
  1. /*-------------------------------------------------------------------------
  2. *
  3. * pg_lsn.h
  4. * Declarations for operations on log sequence numbers (LSNs) of
  5. * PostgreSQL.
  6. *
  7. *
  8. * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
  9. * Portions Copyright (c) 1994, Regents of the University of California
  10. *
  11. * src/include/utils/pg_lsn.h
  12. *
  13. *-------------------------------------------------------------------------
  14. */
  15. #ifndef PG_LSN_H
  16. #define PG_LSN_H
  17. #include "access/xlogdefs.h"
  18. #include "fmgr.h"
  19. #define DatumGetLSN(X) ((XLogRecPtr) DatumGetInt64(X))
  20. #define LSNGetDatum(X) (Int64GetDatum((int64) (X)))
  21. #define PG_GETARG_LSN(n) DatumGetLSN(PG_GETARG_DATUM(n))
  22. #define PG_RETURN_LSN(x) return LSNGetDatum(x)
  23. extern XLogRecPtr pg_lsn_in_internal(const char *str, bool *have_error);
  24. #endif /* PG_LSN_H */