These operations have existed in lance for a long while and many users need to drop down to lance for this capability. This PR adds the API and implements it using filters (e.g. `_rowid IN (...)`) so that in doesn't currently add any load to `BaseTable`. I'm not sure that is sustainable as base table implementations may want to specialize how they handle this method. However, I figure it is a good starting point. In addition, unlike Lance, this API does not currently guarantee anything about the order of the take results. This is necessary for the fallback filter approach to work (SQL filters cannot guarantee result order)
1.4 KiB
@lancedb/lancedb • Docs
@lancedb/lancedb / TimeoutConfig
Interface: TimeoutConfig
Timeout configuration for remote HTTP client.
Properties
connectTimeout?
optional connectTimeout: number;
The timeout for establishing a connection in seconds. Default is 120
seconds (2 minutes). This can also be set via the environment variable
LANCE_CLIENT_CONNECT_TIMEOUT, as an integer number of seconds.
poolIdleTimeout?
optional poolIdleTimeout: number;
The timeout for keeping idle connections in the connection pool in seconds.
Default is 300 seconds (5 minutes). This can also be set via the
environment variable LANCE_CLIENT_CONNECTION_TIMEOUT, as an integer
number of seconds.
readTimeout?
optional readTimeout: number;
The timeout for reading data from the server in seconds. Default is 300
seconds (5 minutes). This can also be set via the environment variable
LANCE_CLIENT_READ_TIMEOUT, as an integer number of seconds.
timeout?
optional timeout: number;
The overall timeout for the entire request in seconds. This includes
connection, send, and read time. If the entire request doesn't complete
within this time, it will fail. Default is None (no overall timeout).
This can also be set via the environment variable LANCE_CLIENT_TIMEOUT,
as an integer number of seconds.