wal 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +1 -0
  3. data/README.md +49 -0
  4. data/Rakefile +9 -1
  5. data/exe/wal +64 -0
  6. data/lib/wal/active_record_context_extension.rb +15 -0
  7. data/lib/wal/noop_watcher.rb +12 -0
  8. data/lib/wal/record_watcher.rb +389 -0
  9. data/lib/wal/replicator.rb +205 -0
  10. data/lib/wal/streaming_watcher.rb +74 -0
  11. data/lib/wal/version.rb +2 -1
  12. data/lib/wal/watcher.rb +95 -0
  13. data/lib/wal.rb +128 -1
  14. data/rbi/wal.rbi +295 -0
  15. data/sig/wal.rbs +184 -2
  16. data/sorbet/config +7 -0
  17. data/sorbet/rbi/annotations/.gitattributes +1 -0
  18. data/sorbet/rbi/annotations/activemodel.rbi +89 -0
  19. data/sorbet/rbi/annotations/activerecord.rbi +98 -0
  20. data/sorbet/rbi/annotations/activesupport.rbi +463 -0
  21. data/sorbet/rbi/annotations/minitest.rbi +119 -0
  22. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  23. data/sorbet/rbi/gems/.gitattributes +1 -0
  24. data/sorbet/rbi/gems/actioncable@8.0.2.rbi +9 -0
  25. data/sorbet/rbi/gems/actionmailbox@8.0.2.rbi +9 -0
  26. data/sorbet/rbi/gems/actionmailer@8.0.2.rbi +9 -0
  27. data/sorbet/rbi/gems/actionpack@8.0.2.rbi +21122 -0
  28. data/sorbet/rbi/gems/actiontext@8.0.2.rbi +9 -0
  29. data/sorbet/rbi/gems/actionview@8.0.2.rbi +16423 -0
  30. data/sorbet/rbi/gems/activejob@8.0.2.rbi +9 -0
  31. data/sorbet/rbi/gems/activemodel@8.0.2.rbi +6866 -0
  32. data/sorbet/rbi/gems/activerecord@8.0.2.rbi +43227 -0
  33. data/sorbet/rbi/gems/activestorage@8.0.2.rbi +9 -0
  34. data/sorbet/rbi/gems/activesupport@8.0.2.rbi +21110 -0
  35. data/sorbet/rbi/gems/ast@2.4.3.rbi +585 -0
  36. data/sorbet/rbi/gems/base64@0.3.0.rbi +545 -0
  37. data/sorbet/rbi/gems/benchmark@0.4.1.rbi +619 -0
  38. data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +78 -0
  39. data/sorbet/rbi/gems/builder@3.3.0.rbi +9 -0
  40. data/sorbet/rbi/gems/commander@5.0.0.rbi +9 -0
  41. data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +11657 -0
  42. data/sorbet/rbi/gems/connection_pool@2.5.3.rbi +9 -0
  43. data/sorbet/rbi/gems/crass@1.0.6.rbi +623 -0
  44. data/sorbet/rbi/gems/date@3.4.1.rbi +75 -0
  45. data/sorbet/rbi/gems/diff-lcs@1.6.2.rbi +1134 -0
  46. data/sorbet/rbi/gems/docker-api@2.4.0.rbi +1719 -0
  47. data/sorbet/rbi/gems/docopt@0.6.1.rbi +9 -0
  48. data/sorbet/rbi/gems/drb@2.2.3.rbi +1661 -0
  49. data/sorbet/rbi/gems/erubi@1.13.1.rbi +155 -0
  50. data/sorbet/rbi/gems/excon@1.2.7.rbi +1514 -0
  51. data/sorbet/rbi/gems/globalid@1.2.1.rbi +9 -0
  52. data/sorbet/rbi/gems/highline@3.0.1.rbi +9 -0
  53. data/sorbet/rbi/gems/i18n@1.14.7.rbi +2359 -0
  54. data/sorbet/rbi/gems/io-console@0.8.0.rbi +9 -0
  55. data/sorbet/rbi/gems/logger@1.7.0.rbi +963 -0
  56. data/sorbet/rbi/gems/loofah@2.24.1.rbi +1105 -0
  57. data/sorbet/rbi/gems/mail@2.8.1.rbi +9 -0
  58. data/sorbet/rbi/gems/marcel@1.0.4.rbi +9 -0
  59. data/sorbet/rbi/gems/mini_mime@1.1.5.rbi +9 -0
  60. data/sorbet/rbi/gems/minitest@5.25.5.rbi +1704 -0
  61. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +268 -0
  62. data/sorbet/rbi/gems/net-imap@0.5.9.rbi +9 -0
  63. data/sorbet/rbi/gems/net-pop@0.1.2.rbi +9 -0
  64. data/sorbet/rbi/gems/net-protocol@0.2.2.rbi +292 -0
  65. data/sorbet/rbi/gems/net-smtp@0.5.1.rbi +9 -0
  66. data/sorbet/rbi/gems/netrc@0.11.0.rbi +159 -0
  67. data/sorbet/rbi/gems/nio4r@2.7.4.rbi +9 -0
  68. data/sorbet/rbi/gems/nokogiri@1.18.8.rbi +8206 -0
  69. data/sorbet/rbi/gems/ostruct@0.6.2.rbi +354 -0
  70. data/sorbet/rbi/gems/parallel@1.27.0.rbi +291 -0
  71. data/sorbet/rbi/gems/parlour@9.1.1.rbi +3071 -0
  72. data/sorbet/rbi/gems/parser@3.3.8.0.rbi +7338 -0
  73. data/sorbet/rbi/gems/pg-replication-protocol@0.0.7.rbi +633 -0
  74. data/sorbet/rbi/gems/pg@1.5.9.rbi +2806 -0
  75. data/sorbet/rbi/gems/pp@0.6.2.rbi +368 -0
  76. data/sorbet/rbi/gems/prettyprint@0.2.0.rbi +477 -0
  77. data/sorbet/rbi/gems/prism@1.4.0.rbi +41732 -0
  78. data/sorbet/rbi/gems/psych@5.2.3.rbi +2435 -0
  79. data/sorbet/rbi/gems/racc@1.8.1.rbi +160 -0
  80. data/sorbet/rbi/gems/rack-session@2.1.1.rbi +727 -0
  81. data/sorbet/rbi/gems/rack-test@2.2.0.rbi +734 -0
  82. data/sorbet/rbi/gems/rack@3.1.16.rbi +4940 -0
  83. data/sorbet/rbi/gems/rackup@2.2.1.rbi +230 -0
  84. data/sorbet/rbi/gems/rails-dom-testing@2.3.0.rbi +858 -0
  85. data/sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi +785 -0
  86. data/sorbet/rbi/gems/rails@8.0.2.rbi +9 -0
  87. data/sorbet/rbi/gems/railties@8.0.2.rbi +3865 -0
  88. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +403 -0
  89. data/sorbet/rbi/gems/rake@13.2.1.rbi +3120 -0
  90. data/sorbet/rbi/gems/rbi@0.3.6.rbi +6893 -0
  91. data/sorbet/rbi/gems/rbs@3.9.4.rbi +6978 -0
  92. data/sorbet/rbi/gems/rdoc@6.12.0.rbi +12760 -0
  93. data/sorbet/rbi/gems/reline@0.6.0.rbi +2451 -0
  94. data/sorbet/rbi/gems/rexml@3.4.1.rbi +5240 -0
  95. data/sorbet/rbi/gems/rspec-core@3.13.4.rbi +11348 -0
  96. data/sorbet/rbi/gems/rspec-expectations@3.13.5.rbi +8189 -0
  97. data/sorbet/rbi/gems/rspec-mocks@3.13.5.rbi +5350 -0
  98. data/sorbet/rbi/gems/rspec-sorbet@1.9.2.rbi +164 -0
  99. data/sorbet/rbi/gems/rspec-support@3.13.4.rbi +1630 -0
  100. data/sorbet/rbi/gems/rspec@3.13.1.rbi +83 -0
  101. data/sorbet/rbi/gems/securerandom@0.4.1.rbi +75 -0
  102. data/sorbet/rbi/gems/spoom@1.6.3.rbi +6985 -0
  103. data/sorbet/rbi/gems/stringio@3.1.5.rbi +9 -0
  104. data/sorbet/rbi/gems/tapioca@0.16.11.rbi +3628 -0
  105. data/sorbet/rbi/gems/testcontainers-core@0.2.0.rbi +1005 -0
  106. data/sorbet/rbi/gems/testcontainers-postgres@0.2.0.rbi +145 -0
  107. data/sorbet/rbi/gems/thor@1.3.2.rbi +4378 -0
  108. data/sorbet/rbi/gems/timeout@0.4.3.rbi +157 -0
  109. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +5918 -0
  110. data/sorbet/rbi/gems/uri@1.0.3.rbi +2349 -0
  111. data/sorbet/rbi/gems/useragent@0.16.11.rbi +9 -0
  112. data/sorbet/rbi/gems/websocket-driver@0.8.0.rbi +9 -0
  113. data/sorbet/rbi/gems/websocket-extensions@0.1.5.rbi +9 -0
  114. data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +435 -0
  115. data/sorbet/rbi/gems/yard@0.9.37.rbi +18379 -0
  116. data/sorbet/rbi/gems/zeitwerk@2.7.3.rbi +9 -0
  117. data/sorbet/tapioca/config.yml +5 -0
  118. data/sorbet/tapioca/require.rb +12 -0
  119. metadata +231 -6
@@ -0,0 +1,633 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `pg-replication-protocol` gem.
5
+ # Please instead update this file by running `bin/tapioca gem pg-replication-protocol`.
6
+
7
+
8
+ # source://pg-replication-protocol//lib/pg/replication/version.rb#3
9
+ module PG
10
+ include ::PG::Constants
11
+
12
+ class << self
13
+ # source://pg/1.5.9/lib/pg.rb#62
14
+ def connect(*args, &block); end
15
+
16
+ def init_openssl(_arg0, _arg1); end
17
+ def init_ssl(_arg0); end
18
+ def is_threadsafe?; end
19
+ def isthreadsafe; end
20
+ def library_version; end
21
+
22
+ # source://pg/1.5.9/lib/pg.rb#67
23
+ def make_shareable(obj); end
24
+
25
+ # source://pg/1.5.9/lib/pg.rb#132
26
+ def require_bigdecimal_without_warning; end
27
+
28
+ def threadsafe?; end
29
+
30
+ # source://pg/1.5.9/lib/pg.rb#56
31
+ def version_string(include_buildnum = T.unsafe(nil)); end
32
+ end
33
+ end
34
+
35
+ class PG::ActiveSqlTransaction < ::PG::InvalidTransactionState; end
36
+ class PG::AdminShutdown < ::PG::OperatorIntervention; end
37
+ class PG::AmbiguousAlias < ::PG::SyntaxErrorOrAccessRuleViolation; end
38
+ class PG::AmbiguousColumn < ::PG::SyntaxErrorOrAccessRuleViolation; end
39
+ class PG::AmbiguousFunction < ::PG::SyntaxErrorOrAccessRuleViolation; end
40
+ class PG::AmbiguousParameter < ::PG::SyntaxErrorOrAccessRuleViolation; end
41
+ class PG::ArraySubscriptError < ::PG::DataException; end
42
+ class PG::AssertFailure < ::PG::PlpgsqlError; end
43
+ class PG::BadCopyFileFormat < ::PG::DataException; end
44
+ class PG::BranchTransactionAlreadyActive < ::PG::InvalidTransactionState; end
45
+ class PG::CannotCoerce < ::PG::SyntaxErrorOrAccessRuleViolation; end
46
+ class PG::CannotConnectNow < ::PG::OperatorIntervention; end
47
+ class PG::CantChangeRuntimeParam < ::PG::ObjectNotInPrerequisiteState; end
48
+ class PG::CardinalityViolation < ::PG::ServerError; end
49
+ class PG::CaseNotFound < ::PG::ServerError; end
50
+ class PG::CharacterNotInRepertoire < ::PG::DataException; end
51
+ class PG::CheckViolation < ::PG::IntegrityConstraintViolation; end
52
+ class PG::CollationMismatch < ::PG::SyntaxErrorOrAccessRuleViolation; end
53
+ class PG::CompositeDecoder < ::PG::CompositeCoder; end
54
+ class PG::CompositeEncoder < ::PG::CompositeCoder; end
55
+ class PG::ConfigFileError < ::PG::ServerError; end
56
+ class PG::ConfigurationLimitExceeded < ::PG::InsufficientResources; end
57
+
58
+ class PG::Connection
59
+ include ::PG::Constants
60
+ include ::PG::Replication
61
+ end
62
+
63
+ class PG::ConnectionBad < ::PG::Error; end
64
+ class PG::ConnectionDoesNotExist < ::PG::ConnectionException; end
65
+ class PG::ConnectionException < ::PG::ServerError; end
66
+ class PG::ConnectionFailure < ::PG::ConnectionException; end
67
+ module PG::Constants; end
68
+ class PG::CopyDecoder < ::PG::CopyCoder; end
69
+ class PG::CopyEncoder < ::PG::CopyCoder; end
70
+ class PG::CrashShutdown < ::PG::OperatorIntervention; end
71
+ class PG::DataCorrupted < ::PG::InternalError; end
72
+ class PG::DataException < ::PG::ServerError; end
73
+ class PG::DatabaseDropped < ::PG::OperatorIntervention; end
74
+ class PG::DatatypeMismatch < ::PG::SyntaxErrorOrAccessRuleViolation; end
75
+ class PG::DatetimeFieldOverflow < ::PG::DataException; end
76
+ class PG::DependentObjectsStillExist < ::PG::DependentPrivilegeDescriptorsStillExist; end
77
+ class PG::DependentPrivilegeDescriptorsStillExist < ::PG::ServerError; end
78
+ class PG::DiagnosticsException < ::PG::ServerError; end
79
+ class PG::DiskFull < ::PG::InsufficientResources; end
80
+ class PG::DivisionByZero < ::PG::DataException; end
81
+ class PG::DuplicateAlias < ::PG::SyntaxErrorOrAccessRuleViolation; end
82
+ class PG::DuplicateColumn < ::PG::SyntaxErrorOrAccessRuleViolation; end
83
+ class PG::DuplicateCursor < ::PG::SyntaxErrorOrAccessRuleViolation; end
84
+ class PG::DuplicateDatabase < ::PG::SyntaxErrorOrAccessRuleViolation; end
85
+ class PG::DuplicateFile < ::PG::SystemError; end
86
+ class PG::DuplicateFunction < ::PG::SyntaxErrorOrAccessRuleViolation; end
87
+ class PG::DuplicateJsonObjectKeyValue < ::PG::DataException; end
88
+ class PG::DuplicateObject < ::PG::SyntaxErrorOrAccessRuleViolation; end
89
+ class PG::DuplicatePstatement < ::PG::SyntaxErrorOrAccessRuleViolation; end
90
+ class PG::DuplicateSchema < ::PG::SyntaxErrorOrAccessRuleViolation; end
91
+ class PG::DuplicateTable < ::PG::SyntaxErrorOrAccessRuleViolation; end
92
+ class PG::EREContainingSqlNotPermitted < ::PG::ExternalRoutineException; end
93
+ class PG::EREModifyingSqlDataNotPermitted < ::PG::ExternalRoutineException; end
94
+ class PG::EREProhibitedSqlStatementAttempted < ::PG::ExternalRoutineException; end
95
+ class PG::EREReadingSqlDataNotPermitted < ::PG::ExternalRoutineException; end
96
+ class PG::ERIEEventTriggerProtocolViolated < ::PG::ExternalRoutineInvocationException; end
97
+ class PG::ERIEInvalidSqlstateReturned < ::PG::ExternalRoutineInvocationException; end
98
+ class PG::ERIENullValueNotAllowed < ::PG::ExternalRoutineInvocationException; end
99
+ class PG::ERIESrfProtocolViolated < ::PG::ExternalRoutineInvocationException; end
100
+ class PG::ERIETriggerProtocolViolated < ::PG::ExternalRoutineInvocationException; end
101
+ class PG::ErrorInAssignment < ::PG::DataException; end
102
+ class PG::EscapeCharacterConflict < ::PG::DataException; end
103
+ class PG::ExclusionViolation < ::PG::IntegrityConstraintViolation; end
104
+ class PG::ExternalRoutineException < ::PG::ServerError; end
105
+ class PG::ExternalRoutineInvocationException < ::PG::ServerError; end
106
+ class PG::FdwColumnNameNotFound < ::PG::FdwError; end
107
+ class PG::FdwDynamicParameterValueNeeded < ::PG::FdwError; end
108
+ class PG::FdwError < ::PG::ServerError; end
109
+ class PG::FdwFunctionSequenceError < ::PG::FdwError; end
110
+ class PG::FdwInconsistentDescriptorInformation < ::PG::FdwError; end
111
+ class PG::FdwInvalidAttributeValue < ::PG::FdwError; end
112
+ class PG::FdwInvalidColumnName < ::PG::FdwError; end
113
+ class PG::FdwInvalidColumnNumber < ::PG::FdwError; end
114
+ class PG::FdwInvalidDataType < ::PG::FdwError; end
115
+ class PG::FdwInvalidDataTypeDescriptors < ::PG::FdwError; end
116
+ class PG::FdwInvalidDescriptorFieldIdentifier < ::PG::FdwError; end
117
+ class PG::FdwInvalidHandle < ::PG::FdwError; end
118
+ class PG::FdwInvalidOptionIndex < ::PG::FdwError; end
119
+ class PG::FdwInvalidOptionName < ::PG::FdwError; end
120
+ class PG::FdwInvalidStringFormat < ::PG::FdwError; end
121
+ class PG::FdwInvalidStringLengthOrBufferLength < ::PG::FdwError; end
122
+ class PG::FdwInvalidUseOfNullPointer < ::PG::FdwError; end
123
+ class PG::FdwNoSchemas < ::PG::FdwError; end
124
+ class PG::FdwOptionNameNotFound < ::PG::FdwError; end
125
+ class PG::FdwOutOfMemory < ::PG::FdwError; end
126
+ class PG::FdwReplyHandle < ::PG::FdwError; end
127
+ class PG::FdwSchemaNotFound < ::PG::FdwError; end
128
+ class PG::FdwTableNotFound < ::PG::FdwError; end
129
+ class PG::FdwTooManyHandles < ::PG::FdwError; end
130
+ class PG::FdwUnableToCreateExecution < ::PG::FdwError; end
131
+ class PG::FdwUnableToCreateReply < ::PG::FdwError; end
132
+ class PG::FdwUnableToEstablishConnection < ::PG::FdwError; end
133
+ class PG::FeatureNotSupported < ::PG::ServerError; end
134
+ class PG::FloatingPointException < ::PG::DataException; end
135
+ class PG::ForeignKeyViolation < ::PG::IntegrityConstraintViolation; end
136
+ class PG::GeneratedAlways < ::PG::SyntaxErrorOrAccessRuleViolation; end
137
+ class PG::GroupingError < ::PG::SyntaxErrorOrAccessRuleViolation; end
138
+ class PG::HeldCursorRequiresSameIsolationLevel < ::PG::InvalidTransactionState; end
139
+ class PG::IdleInTransactionSessionTimeout < ::PG::InvalidTransactionState; end
140
+ class PG::IdleSessionTimeout < ::PG::OperatorIntervention; end
141
+ class PG::InFailedSqlTransaction < ::PG::InvalidTransactionState; end
142
+ class PG::InappropriateAccessModeForBranchTransaction < ::PG::InvalidTransactionState; end
143
+ class PG::InappropriateIsolationLevelForBranchTransaction < ::PG::InvalidTransactionState; end
144
+ class PG::IndeterminateCollation < ::PG::SyntaxErrorOrAccessRuleViolation; end
145
+ class PG::IndeterminateDatatype < ::PG::SyntaxErrorOrAccessRuleViolation; end
146
+ class PG::IndexCorrupted < ::PG::InternalError; end
147
+ class PG::IndicatorOverflow < ::PG::DataException; end
148
+ class PG::InsufficientPrivilege < ::PG::SyntaxErrorOrAccessRuleViolation; end
149
+ class PG::InsufficientResources < ::PG::ServerError; end
150
+ class PG::IntegrityConstraintViolation < ::PG::ServerError; end
151
+ class PG::InternalError < ::PG::ServerError; end
152
+ class PG::IntervalFieldOverflow < ::PG::DataException; end
153
+ class PG::InvalidArgumentForLog < ::PG::DataException; end
154
+ class PG::InvalidArgumentForNthValue < ::PG::DataException; end
155
+ class PG::InvalidArgumentForNtile < ::PG::DataException; end
156
+ class PG::InvalidArgumentForPowerFunction < ::PG::DataException; end
157
+ class PG::InvalidArgumentForSqlJsonDatetimeFunction < ::PG::DataException; end
158
+ class PG::InvalidArgumentForWidthBucketFunction < ::PG::DataException; end
159
+ class PG::InvalidAuthorizationSpecification < ::PG::ServerError; end
160
+ class PG::InvalidBinaryRepresentation < ::PG::DataException; end
161
+ class PG::InvalidCatalogName < ::PG::ServerError; end
162
+ class PG::InvalidChangeOfResultFields < ::PG::Error; end
163
+ class PG::InvalidCharacterValueForCast < ::PG::DataException; end
164
+ class PG::InvalidColumnDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
165
+ class PG::InvalidColumnReference < ::PG::SyntaxErrorOrAccessRuleViolation; end
166
+ class PG::InvalidCursorDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
167
+ class PG::InvalidCursorName < ::PG::ServerError; end
168
+ class PG::InvalidCursorState < ::PG::ServerError; end
169
+ class PG::InvalidDatabaseDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
170
+ class PG::InvalidDatetimeFormat < ::PG::DataException; end
171
+ class PG::InvalidEscapeCharacter < ::PG::DataException; end
172
+ class PG::InvalidEscapeOctet < ::PG::DataException; end
173
+ class PG::InvalidEscapeSequence < ::PG::DataException; end
174
+ class PG::InvalidForeignKey < ::PG::SyntaxErrorOrAccessRuleViolation; end
175
+ class PG::InvalidFunctionDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
176
+ class PG::InvalidGrantOperation < ::PG::InvalidGrantor; end
177
+ class PG::InvalidGrantor < ::PG::ServerError; end
178
+ class PG::InvalidIndicatorParameterValue < ::PG::DataException; end
179
+ class PG::InvalidJsonText < ::PG::DataException; end
180
+ class PG::InvalidName < ::PG::SyntaxErrorOrAccessRuleViolation; end
181
+ class PG::InvalidObjectDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
182
+ class PG::InvalidParameterValue < ::PG::DataException; end
183
+ class PG::InvalidPassword < ::PG::InvalidAuthorizationSpecification; end
184
+ class PG::InvalidPrecedingOrFollowingSize < ::PG::DataException; end
185
+ class PG::InvalidPstatementDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
186
+ class PG::InvalidRecursion < ::PG::SyntaxErrorOrAccessRuleViolation; end
187
+ class PG::InvalidRegularExpression < ::PG::DataException; end
188
+ class PG::InvalidResultStatus < ::PG::Error; end
189
+ class PG::InvalidRoleSpecification < ::PG::ServerError; end
190
+ class PG::InvalidRowCountInLimitClause < ::PG::DataException; end
191
+ class PG::InvalidRowCountInResultOffsetClause < ::PG::DataException; end
192
+ class PG::InvalidSchemaDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
193
+ class PG::InvalidSchemaName < ::PG::ServerError; end
194
+ class PG::InvalidSqlJsonSubscript < ::PG::DataException; end
195
+ class PG::InvalidSqlStatementName < ::PG::ServerError; end
196
+ class PG::InvalidTableDefinition < ::PG::SyntaxErrorOrAccessRuleViolation; end
197
+ class PG::InvalidTablesampleArgument < ::PG::DataException; end
198
+ class PG::InvalidTablesampleRepeat < ::PG::DataException; end
199
+ class PG::InvalidTextRepresentation < ::PG::DataException; end
200
+ class PG::InvalidTimeZoneDisplacementValue < ::PG::DataException; end
201
+ class PG::InvalidTransactionInitiation < ::PG::ServerError; end
202
+ class PG::InvalidTransactionState < ::PG::ServerError; end
203
+ class PG::InvalidTransactionTermination < ::PG::ServerError; end
204
+ class PG::InvalidUseOfEscapeCharacter < ::PG::DataException; end
205
+ class PG::InvalidXmlComment < ::PG::DataException; end
206
+ class PG::InvalidXmlContent < ::PG::DataException; end
207
+ class PG::InvalidXmlDocument < ::PG::DataException; end
208
+ class PG::InvalidXmlProcessingInstruction < ::PG::DataException; end
209
+ class PG::IoError < ::PG::SystemError; end
210
+ class PG::LEInvalidSpecification < ::PG::LocatorException; end
211
+ class PG::LocatorException < ::PG::ServerError; end
212
+ class PG::LockFileExists < ::PG::ConfigFileError; end
213
+ class PG::LockNotAvailable < ::PG::ObjectNotInPrerequisiteState; end
214
+ class PG::MoreThanOneSqlJsonItem < ::PG::DataException; end
215
+ class PG::MostSpecificTypeMismatch < ::PG::DataException; end
216
+ class PG::NameTooLong < ::PG::SyntaxErrorOrAccessRuleViolation; end
217
+ class PG::NoActiveSqlTransaction < ::PG::InvalidTransactionState; end
218
+ class PG::NoActiveSqlTransactionForBranchTransaction < ::PG::InvalidTransactionState; end
219
+ class PG::NoDataFound < ::PG::PlpgsqlError; end
220
+ class PG::NoResultError < ::PG::Error; end
221
+ class PG::NoSqlJsonItem < ::PG::DataException; end
222
+ class PG::NonNumericSqlJsonItem < ::PG::DataException; end
223
+ class PG::NonUniqueKeysInAJsonObject < ::PG::DataException; end
224
+ class PG::NonstandardUseOfEscapeCharacter < ::PG::DataException; end
225
+ class PG::NotAnXmlDocument < ::PG::DataException; end
226
+ class PG::NotNullViolation < ::PG::IntegrityConstraintViolation; end
227
+ class PG::NullValueNoIndicatorParameter < ::PG::DataException; end
228
+ class PG::NullValueNotAllowed < ::PG::DataException; end
229
+ class PG::NumericValueOutOfRange < ::PG::DataException; end
230
+ class PG::ObjectInUse < ::PG::ObjectNotInPrerequisiteState; end
231
+ class PG::ObjectNotInPrerequisiteState < ::PG::ServerError; end
232
+ class PG::OperatorIntervention < ::PG::ServerError; end
233
+ class PG::OutOfMemory < ::PG::InsufficientResources; end
234
+ class PG::PlpgsqlError < ::PG::ServerError; end
235
+ class PG::ProgramLimitExceeded < ::PG::ServerError; end
236
+ class PG::ProtocolViolation < ::PG::ConnectionException; end
237
+ class PG::QueryCanceled < ::PG::OperatorIntervention; end
238
+ class PG::RaiseException < ::PG::PlpgsqlError; end
239
+ class PG::ReadOnlySqlTransaction < ::PG::InvalidTransactionState; end
240
+ class PG::RecordDecoder < ::PG::RecordCoder; end
241
+ class PG::RecordEncoder < ::PG::RecordCoder; end
242
+
243
+ # source://pg-replication-protocol//lib/pg/replication/version.rb#4
244
+ module PG::Replication
245
+ # source://pg-replication-protocol//lib/pg/replication.rb#118
246
+ def confirmed_slot_lsn(slot); end
247
+
248
+ # source://pg-replication-protocol//lib/pg/replication.rb#108
249
+ def last_confirmed_lsn; end
250
+
251
+ # source://pg-replication-protocol//lib/pg/replication.rb#87
252
+ def standby_status_update(write_lsn:, flush_lsn: T.unsafe(nil), apply_lsn: T.unsafe(nil), timestamp: T.unsafe(nil), reply: T.unsafe(nil)); end
253
+
254
+ # source://pg-replication-protocol//lib/pg/replication.rb#72
255
+ def start_pgoutput_replication_slot(slot, publication_names, **kwargs); end
256
+
257
+ # source://pg-replication-protocol//lib/pg/replication.rb#11
258
+ def start_replication_slot(slot, logical: T.unsafe(nil), auto_keep_alive: T.unsafe(nil), location: T.unsafe(nil), **params); end
259
+
260
+ # source://pg-replication-protocol//lib/pg/replication.rb#112
261
+ def wal_receiver_status_interval; end
262
+ end
263
+
264
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#8
265
+ class PG::Replication::Buffer < ::SimpleDelegator
266
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#17
267
+ def read_bool; end
268
+
269
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#13
270
+ def read_char; end
271
+
272
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#42
273
+ def read_cstring; end
274
+
275
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#25
276
+ def read_int16; end
277
+
278
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#29
279
+ def read_int32; end
280
+
281
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#33
282
+ def read_int64; end
283
+
284
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#21
285
+ def read_int8; end
286
+
287
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#37
288
+ def read_timestamp; end
289
+
290
+ private
291
+
292
+ # @raise [EOFError]
293
+ #
294
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#56
295
+ def read_bytes(n); end
296
+
297
+ class << self
298
+ # source://pg-replication-protocol//lib/pg/replication/buffer.rb#9
299
+ def from_string(str); end
300
+ end
301
+ end
302
+
303
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#5
304
+ module PG::Replication::PGOutput
305
+ class << self
306
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#35
307
+ def read_message(buffer); end
308
+
309
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#164
310
+ def read_tuple(buffer); end
311
+
312
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#160
313
+ def read_tuples(buffer); end
314
+ end
315
+ end
316
+
317
+ class PG::Replication::PGOutput::Begin < ::Data
318
+ def final_lsn; end
319
+ def timestamp; end
320
+ def xid; end
321
+
322
+ class << self
323
+ def [](*_arg0); end
324
+ def inspect; end
325
+ def members; end
326
+ def new(*_arg0); end
327
+ end
328
+ end
329
+
330
+ class PG::Replication::PGOutput::Column < ::Data
331
+ def flags; end
332
+
333
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#30
334
+ def key?; end
335
+
336
+ def modifier; end
337
+ def name; end
338
+ def oid; end
339
+
340
+ class << self
341
+ def [](*_arg0); end
342
+ def inspect; end
343
+ def members; end
344
+ def new(*_arg0); end
345
+ end
346
+ end
347
+
348
+ class PG::Replication::PGOutput::Commit < ::Data
349
+ def end_lsn; end
350
+ def lsn; end
351
+ def timestamp; end
352
+
353
+ class << self
354
+ def [](*_arg0); end
355
+ def inspect; end
356
+ def members; end
357
+ def new(*_arg0); end
358
+ end
359
+ end
360
+
361
+ class PG::Replication::PGOutput::Delete < ::Data
362
+ def key; end
363
+ def oid; end
364
+ def old; end
365
+
366
+ class << self
367
+ def [](*_arg0); end
368
+ def inspect; end
369
+ def members; end
370
+ def new(*_arg0); end
371
+ end
372
+ end
373
+
374
+ class PG::Replication::PGOutput::Insert < ::Data
375
+ def new; end
376
+ def oid; end
377
+
378
+ class << self
379
+ def [](*_arg0); end
380
+ def inspect; end
381
+ def members; end
382
+ def new(*_arg0); end
383
+ end
384
+ end
385
+
386
+ class PG::Replication::PGOutput::Message < ::Data
387
+ def content; end
388
+ def lsn; end
389
+ def prefix; end
390
+ def transactional; end
391
+
392
+ class << self
393
+ def [](*_arg0); end
394
+ def inspect; end
395
+ def members; end
396
+ def new(*_arg0); end
397
+ end
398
+ end
399
+
400
+ class PG::Replication::PGOutput::Origin < ::Data
401
+ def commit_lsn; end
402
+ def name; end
403
+
404
+ class << self
405
+ def [](*_arg0); end
406
+ def inspect; end
407
+ def members; end
408
+ def new(*_arg0); end
409
+ end
410
+ end
411
+
412
+ class PG::Replication::PGOutput::Relation < ::Data
413
+ def columns; end
414
+ def name; end
415
+ def namespace; end
416
+ def oid; end
417
+ def replica_identity; end
418
+
419
+ class << self
420
+ def [](*_arg0); end
421
+ def inspect; end
422
+ def members; end
423
+ def new(*_arg0); end
424
+ end
425
+ end
426
+
427
+ class PG::Replication::PGOutput::Truncate < ::Data
428
+ def oid; end
429
+
430
+ class << self
431
+ def [](*_arg0); end
432
+ def inspect; end
433
+ def members; end
434
+ def new(*_arg0); end
435
+ end
436
+ end
437
+
438
+ class PG::Replication::PGOutput::Tuple < ::Data
439
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#21
440
+ def binary?; end
441
+
442
+ def data; end
443
+
444
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#17
445
+ def text?; end
446
+
447
+ # source://pg-replication-protocol//lib/pg/replication/pg_output.rb#25
448
+ def toast?; end
449
+
450
+ def type; end
451
+
452
+ class << self
453
+ def [](*_arg0); end
454
+ def inspect; end
455
+ def members; end
456
+ def new(*_arg0); end
457
+ end
458
+ end
459
+
460
+ class PG::Replication::PGOutput::Type < ::Data
461
+ def name; end
462
+ def namespace; end
463
+ def oid; end
464
+
465
+ class << self
466
+ def [](*_arg0); end
467
+ def inspect; end
468
+ def members; end
469
+ def new(*_arg0); end
470
+ end
471
+ end
472
+
473
+ class PG::Replication::PGOutput::Update < ::Data
474
+ def key; end
475
+ def new; end
476
+ def oid; end
477
+ def old; end
478
+
479
+ class << self
480
+ def [](*_arg0); end
481
+ def inspect; end
482
+ def members; end
483
+ def new(*_arg0); end
484
+ end
485
+ end
486
+
487
+ # source://pg-replication-protocol//lib/pg/replication/protocol.rb#5
488
+ module PG::Replication::Protocol
489
+ class << self
490
+ # source://pg-replication-protocol//lib/pg/replication/protocol.rb#9
491
+ def read_message(buffer); end
492
+ end
493
+ end
494
+
495
+ class PG::Replication::Protocol::PrimaryKeepalive < ::Data
496
+ def asap; end
497
+ def current_lsn; end
498
+ def server_time; end
499
+
500
+ class << self
501
+ def [](*_arg0); end
502
+ def inspect; end
503
+ def members; end
504
+ def new(*_arg0); end
505
+ end
506
+ end
507
+
508
+ class PG::Replication::Protocol::XLogData < ::Data
509
+ def current_lsn; end
510
+ def data; end
511
+ def lsn; end
512
+ def server_time; end
513
+
514
+ class << self
515
+ def [](*_arg0); end
516
+ def inspect; end
517
+ def members; end
518
+ def new(*_arg0); end
519
+ end
520
+ end
521
+
522
+ # source://pg-replication-protocol//lib/pg/replication/version.rb#5
523
+ PG::Replication::VERSION = T.let(T.unsafe(nil), String)
524
+
525
+ class PG::ReservedName < ::PG::SyntaxErrorOrAccessRuleViolation; end
526
+ class PG::RestrictViolation < ::PG::IntegrityConstraintViolation; end
527
+ class PG::SEInvalidSpecification < ::PG::SavepointException; end
528
+ class PG::SREFunctionExecutedNoReturnStatement < ::PG::SqlRoutineException; end
529
+ class PG::SREModifyingSqlDataNotPermitted < ::PG::SqlRoutineException; end
530
+ class PG::SREProhibitedSqlStatementAttempted < ::PG::SqlRoutineException; end
531
+ class PG::SREReadingSqlDataNotPermitted < ::PG::SqlRoutineException; end
532
+ class PG::SavepointException < ::PG::ServerError; end
533
+ class PG::SchemaAndDataStatementMixingNotSupported < ::PG::InvalidTransactionState; end
534
+ class PG::SequenceGeneratorLimitExceeded < ::PG::DataException; end
535
+ class PG::ServerError < ::PG::Error; end
536
+ class PG::SimpleCoder < ::PG::Coder; end
537
+ class PG::SimpleDecoder < ::PG::SimpleCoder; end
538
+ class PG::SimpleEncoder < ::PG::SimpleCoder; end
539
+ class PG::SingletonSqlJsonItemRequired < ::PG::DataException; end
540
+ class PG::SqlJsonArrayNotFound < ::PG::DataException; end
541
+ class PG::SqlJsonItemCannotBeCastToTargetType < ::PG::DataException; end
542
+ class PG::SqlJsonMemberNotFound < ::PG::DataException; end
543
+ class PG::SqlJsonNumberNotFound < ::PG::DataException; end
544
+ class PG::SqlJsonObjectNotFound < ::PG::DataException; end
545
+ class PG::SqlJsonScalarRequired < ::PG::DataException; end
546
+ class PG::SqlRoutineException < ::PG::ServerError; end
547
+ class PG::SqlStatementNotYetComplete < ::PG::ServerError; end
548
+ class PG::SqlclientUnableToEstablishSqlconnection < ::PG::ConnectionException; end
549
+ class PG::SqlserverRejectedEstablishmentOfSqlconnection < ::PG::ConnectionException; end
550
+ class PG::StackedDiagnosticsAccessedWithoutActiveHandler < ::PG::DiagnosticsException; end
551
+ class PG::StatementTooComplex < ::PG::ProgramLimitExceeded; end
552
+ class PG::StringDataLengthMismatch < ::PG::DataException; end
553
+ class PG::StringDataRightTruncation < ::PG::DataException; end
554
+ class PG::SubstringError < ::PG::DataException; end
555
+ class PG::SyntaxError < ::PG::SyntaxErrorOrAccessRuleViolation; end
556
+ class PG::SyntaxErrorOrAccessRuleViolation < ::PG::ServerError; end
557
+ class PG::SystemError < ::PG::ServerError; end
558
+ class PG::TRDeadlockDetected < ::PG::TransactionRollback; end
559
+ class PG::TRIntegrityConstraintViolation < ::PG::TransactionRollback; end
560
+ class PG::TRSerializationFailure < ::PG::TransactionRollback; end
561
+ class PG::TRStatementCompletionUnknown < ::PG::TransactionRollback; end
562
+ class PG::TooManyArguments < ::PG::ProgramLimitExceeded; end
563
+ class PG::TooManyColumns < ::PG::ProgramLimitExceeded; end
564
+ class PG::TooManyConnections < ::PG::InsufficientResources; end
565
+ class PG::TooManyJsonArrayElements < ::PG::DataException; end
566
+ class PG::TooManyJsonObjectMembers < ::PG::DataException; end
567
+ class PG::TooManyRows < ::PG::PlpgsqlError; end
568
+ class PG::TransactionResolutionUnknown < ::PG::ConnectionException; end
569
+ class PG::TransactionRollback < ::PG::ServerError; end
570
+ class PG::TransactionTimeout < ::PG::InvalidTransactionState; end
571
+ class PG::TriggeredActionException < ::PG::ServerError; end
572
+ class PG::TriggeredDataChangeViolation < ::PG::ServerError; end
573
+ class PG::TrimError < ::PG::DataException; end
574
+ class PG::TypeMap; end
575
+
576
+ module PG::TypeMap::DefaultTypeMappable
577
+ def default_type_map; end
578
+ def default_type_map=(_arg0); end
579
+ def with_default_type_map(_arg0); end
580
+ end
581
+
582
+ class PG::TypeMapAllStrings < ::PG::TypeMap; end
583
+
584
+ class PG::TypeMapByClass < ::PG::TypeMap
585
+ include ::PG::TypeMap::DefaultTypeMappable
586
+
587
+ def [](_arg0); end
588
+ def []=(_arg0, _arg1); end
589
+ def coders; end
590
+ end
591
+
592
+ class PG::TypeMapByMriType < ::PG::TypeMap
593
+ include ::PG::TypeMap::DefaultTypeMappable
594
+
595
+ def [](_arg0); end
596
+ def []=(_arg0, _arg1); end
597
+ def coders; end
598
+ end
599
+
600
+ class PG::TypeMapByOid < ::PG::TypeMap
601
+ include ::PG::TypeMap::DefaultTypeMappable
602
+
603
+ def add_coder(_arg0); end
604
+ def build_column_map(_arg0); end
605
+ def coders; end
606
+ def max_rows_for_online_lookup; end
607
+ def max_rows_for_online_lookup=(_arg0); end
608
+ def rm_coder(_arg0, _arg1); end
609
+ end
610
+
611
+ class PG::TypeMapInRuby < ::PG::TypeMap
612
+ include ::PG::TypeMap::DefaultTypeMappable
613
+
614
+ def typecast_copy_get(_arg0, _arg1, _arg2, _arg3); end
615
+ def typecast_query_param(_arg0, _arg1); end
616
+ def typecast_result_value(_arg0, _arg1, _arg2); end
617
+ end
618
+
619
+ class PG::UnableToSend < ::PG::Error; end
620
+ class PG::UndefinedColumn < ::PG::SyntaxErrorOrAccessRuleViolation; end
621
+ class PG::UndefinedFile < ::PG::SystemError; end
622
+ class PG::UndefinedFunction < ::PG::SyntaxErrorOrAccessRuleViolation; end
623
+ class PG::UndefinedObject < ::PG::SyntaxErrorOrAccessRuleViolation; end
624
+ class PG::UndefinedParameter < ::PG::SyntaxErrorOrAccessRuleViolation; end
625
+ class PG::UndefinedTable < ::PG::SyntaxErrorOrAccessRuleViolation; end
626
+ class PG::UniqueViolation < ::PG::IntegrityConstraintViolation; end
627
+ class PG::UnsafeNewEnumValueUsage < ::PG::ObjectNotInPrerequisiteState; end
628
+ class PG::UnterminatedCString < ::PG::DataException; end
629
+ class PG::UntranslatableCharacter < ::PG::DataException; end
630
+ class PG::WindowingError < ::PG::SyntaxErrorOrAccessRuleViolation; end
631
+ class PG::WithCheckOptionViolation < ::PG::ServerError; end
632
+ class PG::WrongObjectType < ::PG::SyntaxErrorOrAccessRuleViolation; end
633
+ class PG::ZeroLengthCharacterString < ::PG::DataException; end