pg_aggs.cpp 902 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. extern "C" {
  2. #include "postgres.h"
  3. #include "fmgr.h"
  4. #include "postgresql/src/backend/utils/fmgrprotos.h"
  5. #undef Abs
  6. #undef Min
  7. #undef Max
  8. #undef TypeName
  9. #undef SortBy
  10. #undef Sort
  11. #undef Unique
  12. #undef LOG
  13. #undef INFO
  14. #undef NOTICE
  15. #undef WARNING
  16. #undef ERROR
  17. #undef FATAL
  18. #undef PANIC
  19. #undef open
  20. #undef fopen
  21. #undef bind
  22. #undef locale_t
  23. #undef strtou64
  24. }
  25. #include "arrow.h"
  26. namespace NYql {
  27. extern "C" {
  28. Y_PRAGMA_DIAGNOSTIC_PUSH
  29. Y_PRAGMA("GCC diagnostic ignored \"-Wreturn-type-c-linkage\"")
  30. #ifdef USE_SLOW_PG_KERNELS
  31. #include "pg_aggs.slow.inc"
  32. #else
  33. #include "pg_proc_policies.all.inc"
  34. #include "pg_aggs.inc"
  35. #endif
  36. Y_PRAGMA_DIAGNOSTIC_POP
  37. }
  38. }
  39. namespace NKikimr {
  40. namespace NMiniKQL {
  41. using namespace NYql;
  42. void RegisterPgBlockAggs(THashMap<TString, std::unique_ptr<IBlockAggregatorFactory>>& registry) {
  43. #include "pg_aggs_register.inc"
  44. }
  45. } // namespace NMiniKQL
  46. } // namespace NKikimr