|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
| Packages that use CopyOperation | |
|---|---|
| org.postgresql.copy | |
| org.postgresql.core | |
| org.postgresql.core.v2 | |
| org.postgresql.core.v3 | |
| Uses of CopyOperation in org.postgresql.copy |
|---|
| Subinterfaces of CopyOperation in org.postgresql.copy | |
|---|---|
interface |
CopyIn
Copy bulk data from client into a PostgreSQL table very fast. |
interface |
CopyOut
|
| Classes in org.postgresql.copy that implement CopyOperation | |
|---|---|
class |
PGCopyInputStream
InputStream for reading from a PostgreSQL COPY TO STDOUT operation |
class |
PGCopyOutputStream
OutputStream for buffered input into a PostgreSQL COPY FROM STDIN operation |
| Uses of CopyOperation in org.postgresql.core |
|---|
| Methods in org.postgresql.core that return CopyOperation | |
|---|---|
CopyOperation |
QueryExecutor.startCopy(String sql,
boolean suppressBegin)
Issues a COPY FROM STDIN / COPY TO STDOUT statement and returns handler for associated operation. |
| Uses of CopyOperation in org.postgresql.core.v2 |
|---|
| Methods in org.postgresql.core.v2 that return CopyOperation | |
|---|---|
CopyOperation |
QueryExecutorImpl.startCopy(String sql,
boolean suppressBegin)
|
| Uses of CopyOperation in org.postgresql.core.v3 |
|---|
| Classes in org.postgresql.core.v3 that implement CopyOperation | |
|---|---|
class |
CopyInImpl
Anticipated flow of a COPY FROM STDIN operation: CopyManager.copyIn() ->QueryExecutor.startCopy() - sends given query to server ->processCopyResults(): - receives CopyInResponse from Server - creates new CopyInImpl ->initCopy(): - receives copy metadata from server ->CopyInImpl.init() ->lock() connection for this operation - if query fails an exception is thrown - if query returns wrong CopyOperation, copyIn() cancels it before throwing exception <-return: new CopyInImpl holding lock on connection repeat CopyIn.writeToCopy() for all data ->CopyInImpl.writeToCopy() ->QueryExecutorImpl.writeToCopy() - sends given data ->processCopyResults() - parameterized not to block, just peek for new messages from server - on ErrorResponse, waits until protocol is restored and unlocks connection CopyIn.endCopy() ->CopyInImpl.endCopy() ->QueryExecutorImpl.endCopy() - sends CopyDone - processCopyResults() - on CommandComplete ->CopyOperationImpl.handleCommandComplete() - sets updatedRowCount when applicable - on ReadyForQuery unlock() connection for use by other operations <-return: CopyInImpl.getUpdatedRowCount() |
class |
CopyOperationImpl
|
class |
CopyOutImpl
Anticipated flow of a COPY TO STDOUT operation: CopyManager.copyOut() ->QueryExecutor.startCopy() - sends given query to server ->processCopyResults(): - receives CopyOutResponse from Server - creates new CopyOutImpl ->initCopy(): - receives copy metadata from server ->CopyOutImpl.init() ->lock() connection for this operation - if query fails an exception is thrown - if query returns wrong CopyOperation, copyOut() cancels it before throwing exception <-returned: new CopyOutImpl holding lock on connection repeat CopyOut.readFromCopy() until null ->CopyOutImpl.readFromCopy() ->QueryExecutorImpl.readFromCopy() ->processCopyResults() - on copydata row from server ->CopyOutImpl.handleCopydata() stores reference to byte array - on CopyDone, CommandComplete, ReadyForQuery ->unlock() connection for use by other operations <-returned: byte array of data received from server or null at end. |
| Methods in org.postgresql.core.v3 that return CopyOperation | |
|---|---|
CopyOperation |
QueryExecutorImpl.startCopy(String sql,
boolean suppressBegin)
Sends given query to BE to start, initialize and lock connection for a CopyOperation. |
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||