All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
target/Darwin-i386/include/aerospike/as_status.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright 2008-2013 by Aerospike.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a copy
5  * of this software and associated documentation files (the "Software"), to
6  * deal in the Software without restriction, including without limitation the
7  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
8  * sell copies of the Software, and to permit persons to whom the Software is
9  * furnished to do so, subject to the following conditions:
10  *
11  * The above copyright notice and this permission notice shall be included in
12  * all copies or substantial portions of the Software.
13  *
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
20  * IN THE SOFTWARE.
21  ******************************************************************************/
22 
23 #pragma once
24 
25 /*******************************************************************************
26  * TYPES
27  ******************************************************************************/
28 
29 /**
30  * Status codes used as return values as as_error.code values.
31  */
32 typedef enum as_status_e {
33 
34  /***************************************************************************
35  * SUCCESS (all < 100)
36  **************************************************************************/
37 
38  /**
39  * Generic success.
40  */
42 
43  /***************************************************************************
44  * ERRORS (all >= 100)
45  **************************************************************************/
46 
47  /**
48  * Generic error.
49  */
51 
52  /***************************************************************************
53  * CLIENT API USAGE
54  **************************************************************************/
55 
56  /**
57  * Generic client API usage error.
58  */
60 
61  /**
62  * Invalid client API parameter.
63  */
65 
66  /***************************************************************************
67  * CLUSTER DISCOVERY & CONNECTION
68  **************************************************************************/
69 
70  /**
71  * Generic cluster discovery & connection error.
72  */
74 
75  /***************************************************************************
76  * INCOMPLETE REQUESTS (i.e. NOT from server-returned error codes)
77  **************************************************************************/
78 
79  /**
80  * Request timed out.
81  */
83 
84  /**
85  * Request randomly dropped by client for throttling.
86  * @warning Not yet supported.
87  */
89 
90  /***************************************************************************
91  * COMPLETED REQUESTS (all >= 500, from server-returned error codes)
92  **************************************************************************/
93 
94  /**
95  * Generic error returned by server.
96  */
98 
99  /**
100  * Request protocol invalid, or invalid protocol field.
101  */
103 
104  /**
105  * Namespace in request not found on server.
106  * @warning Not yet supported, shows as AEROSPIKE_ERR_REQUEST_INVALID.
107  */
109 
110  /**
111  * The server node is running out of memory and/or storage device space
112  * reserved for the specified namespace.
113  */
115 
116  /**
117  * A cluster state change occurred during the request. This may also be
118  * returned by scan operations with the fail_on_cluster_change flag set.
119  */
121 
122  /**
123  * Sometimes our doc, or our customers wishes, get ahead of us. We may have
124  * processed something that the server is not ready for (unsupported feature).
125  */
127 
128  /**
129  * The server node's storage device(s) can't keep up with the write load.
130  */
132 
133  /***************************************************************************
134  * RECORD-SPECIFIC
135  **************************************************************************/
136 
137  /**
138  * Generic record error.
139  */
141 
142  /**
143  * Too may concurrent requests for one record - a "hot-key" situation.
144  */
146 
147  /**
148  * Record does not exist in database. May be returned by read, or write
149  * with policy AS_POLICY_EXISTS_UPDATE.
150  * @warning AS_POLICY_EXISTS_UPDATE not yet supported.
151  */
153 
154  /**
155  * Record already exists. May be returned by write with policy
156  * AS_POLICY_EXISTS_CREATE.
157  */
159 
160  /**
161  * Generation of record in database does not satisfy write policy.
162  */
164 
165  /**
166  * Record being (re-)written can't fit in a storage write block.
167  */
169 
170  /**
171  * Bin modification operation can't be done on an existing bin due to its
172  * value type.
173  */
175 
176  /***************************************************************************
177  * XDR-SPECIFIC
178  **************************************************************************/
179 
180  /**
181  * XDR is not available for the cluster.
182  */
184 
185  /***************************************************************************
186  * SCAN OPERATIONS
187  **************************************************************************/
188 
189  /**
190  * Generic scan error.
191  */
193 
194  /**
195  * Scan aborted by user.
196  */
198 
199  /***************************************************************************
200  * QUERY OPERATIONS
201  **************************************************************************/
202 
203  /**
204  * Generic query error.
205  */
207 
208  /**
209  * Query was aborted.
210  */
212 
213  /**
214  * Query processing queue is full.
215  */
217 
218  /***************************************************************************
219  * SECONDARY INDEX OPERATIONS
220  **************************************************************************/
221 
222  /**
223  * Generic secondary index error.
224  */
226 
227  /**
228  * Index is out of memory
229  */
231 
232  /**
233  * Index not found
234  */
236 
237  /**
238  * Index found.
239  */
241 
242  /**
243  * Unable to read the index.
244  */
246 
247  /**
248  * Index name is too long.
249  */
251 
252  /**
253  * System already has maximum allowed indices.
254  */
256 
257  /***************************************************************************
258  * UDF OPERATIONS
259  **************************************************************************/
260 
261  /**
262  * Generic UDF error.
263  */
265 
266  /**
267  * UDF does not exist.
268  */
270 
271  /***************************************************************************
272  * Large Data Type (LDT) OPERATIONS
273  **************************************************************************/
274 
275  /** Internal LDT error. */
277 
278  /** LDT item not found */
280 
281  /** Unique key violation: Duplicated item inserted when 'unique key" was set.*/
283 
284  /** General error during insert operation. */
286 
287  /** General error during search operation. */
289 
290  /** General error during delete operation. */
292 
293 
294  /** General input parameter error. */
296 
297  // -------------------------------------------------
298 
299  /** LDT Type mismatch for this bin. */
301 
302  /** The supplied LDT bin name is null. */
304 
305  /** The supplied LDT bin name must be a string. */
307 
308  /** The supplied LDT bin name exceeded the 14 char limit. */
310 
311  /** Internal Error: too many open records at one time. */
313 
314  /** Internal Error: Top Record not found. */
316 
317  /** Internal Error: Sub Record not found. */
319 
320  /** LDT Bin does not exist. */
322 
323  /** Collision: LDT Bin already exists. */
325 
326  /** LDT control structures in the Top Record are damaged. Cannot proceed. */
328 
329  // -------------------------------------------------
330 
331  /** Internal Error: LDT Subrecord pool is damaged. */
333 
334  /** LDT control structures in the Sub Record are damaged. Cannot proceed. */
336 
337  /** Error encountered while opening a Sub Record. */
339 
340  /** Error encountered while updating a Sub Record. */
342 
343  /** Error encountered while creating a Sub Record. */
345 
346  /** Error encountered while deleting a Sub Record. */
348 
349  /** Error encountered while closing a Sub Record. */
351 
352  /** Error encountered while updating a TOP Record. */
354 
355  /** Error encountered while creating a TOP Record. */
357 
358  // -------------------------------------------------
359 
360  /** The filter function name was invalid. */
362 
363  /** The filter function was not found. */
365 
366  /** The function to extract the Unique Value from a complex object was invalid. */
368 
369  /** The function to extract the Unique Value from a complex object was not found. */
371 
372  /** The function to transform an object into a binary form was invalid. */
374 
375  /** The function to transform an object into a binary form was not found. */
377 
378  /** The function to untransform an object from binary form to live form was invalid. */
380 
381  /** The function to untransform an object from binary form to live form not found. */
383 
384  /** The UDF user module name for LDT Overrides was invalid */
386 
387  /** The UDF user module name for LDT Overrides was not found */
389 
390 } as_status;