summaryrefslogtreecommitdiff
path: root/ndb/include/ndbapi/NdbDictionary.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'ndb/include/ndbapi/NdbDictionary.hpp')
-rw-r--r--ndb/include/ndbapi/NdbDictionary.hpp36
1 files changed, 34 insertions, 2 deletions
diff --git a/ndb/include/ndbapi/NdbDictionary.hpp b/ndb/include/ndbapi/NdbDictionary.hpp
index a8a3bc86786..3b38e33ec91 100644
--- a/ndb/include/ndbapi/NdbDictionary.hpp
+++ b/ndb/include/ndbapi/NdbDictionary.hpp
@@ -182,7 +182,8 @@ public:
Varbinary, ///< Max len
Datetime, ///< Precision down to 1 sec (sizeof(Datetime) == 8 bytes )
Timespec, ///< Precision down to 1 nsec(sizeof(Datetime) == 12 bytes )
- Blob ///< Binary large object (see NdbBlob)
+ Blob, ///< Binary large object (see NdbBlob)
+ Clob ///< Text blob
};
/**
@@ -297,7 +298,34 @@ public:
* Array length for column or max length for variable length arrays.
*/
int getLength() const;
-
+
+ /**
+ * For blob, set or get "inline size" i.e. number of initial bytes
+ * to store in table's blob attribute. This part is normally in
+ * main memory and can be indexed and interpreted.
+ */
+ void setInlineSize(int size) { setPrecision(size); }
+ int getInlineSize() const { return getPrecision(); }
+
+ /**
+ * For blob, set or get "part size" i.e. number of bytes to store in
+ * each tuple of the "blob table". Must be less than 64k.
+ */
+ void setPartSize(int size) { setScale(size); }
+ int getPartSize() const { return getScale(); }
+
+ /**
+ * For blob, set or get "stripe size" i.e. number of consecutive
+ * <em>parts</em> to store in each node group.
+ */
+ void setStripeSize(int size) { setLength(size); }
+ int getStripeSize() const { return getLength(); }
+
+ /**
+ * Get size of element
+ */
+ int Column::getSize() const;
+
/**
* Set distribution key
*
@@ -349,6 +377,7 @@ public:
#endif
private:
+ friend class NdbRecAttr;
friend class NdbColumnImpl;
class NdbColumnImpl & m_impl;
Column(NdbColumnImpl&);
@@ -1023,6 +1052,7 @@ public:
private:
friend class NdbDictionaryImpl;
friend class UtilTransactions;
+ friend class NdbBlob;
class NdbDictionaryImpl & m_impl;
Dictionary(NdbDictionaryImpl&);
const Table * getIndexTable(const char * indexName,
@@ -1030,4 +1060,6 @@ public:
};
};
+class NdbOut& operator <<(class NdbOut& ndbout, const NdbDictionary::Column::Type type);
+
#endif