~drizzle-pbxt/drizzle/drizzle-pbxt-2

« back to all changes in this revision

Viewing changes to plugin/pbxt/src/table_xt.h

  • Committer: Paul McCullagh
  • Date: 2009-11-10 14:18:39 UTC
  • mfrom: (1038.1.7 drizzle-pbxt-pre-merge)
  • Revision ID: paul.mccullagh@primebase.org-20091110141839-2j3k43b17ag6f605
Merged Drizzle trunk and PBXT 1.0.09

Show diffs side-by-side

added added

removed removed

Lines of Context:
120
120
 
121
121
#ifdef XT_TAB_ROW_USE_XSMUTEX
122
122
#define XT_TAB_ROW_LOCK_TYPE                    XTXSMutexRec
123
 
#define XT_TAB_ROW_INIT_LOCK(s, i)              xt_xsmutex_init(s, i)
 
123
#define XT_TAB_ROW_INIT_LOCK(s, i)              xt_xsmutex_init_with_autoname(s, i)
124
124
#define XT_TAB_ROW_FREE_LOCK(s, i)              xt_xsmutex_free(s, i)   
125
125
#define XT_TAB_ROW_READ_LOCK(i, s)              xt_xsmutex_slock(i, (s)->t_id)
126
126
#define XT_TAB_ROW_WRITE_LOCK(i, s)             xt_xsmutex_xlock(i, (s)->t_id)
148
148
#define XT_TAB_ROW_UNLOCK(i, s)                 xt_spinxslock_unlock(i, (s)->t_id)
149
149
#else
150
150
#define XT_TAB_ROW_LOCK_TYPE                    XTSpinLockRec
151
 
#define XT_TAB_ROW_INIT_LOCK(s, i)              xt_spinlock_init(s, i)
 
151
#define XT_TAB_ROW_INIT_LOCK(s, i)              xt_spinlock_init_with_autoname(s, i)
152
152
#define XT_TAB_ROW_FREE_LOCK(s, i)              xt_spinlock_free(s, i)  
153
153
#define XT_TAB_ROW_READ_LOCK(i, s)              xt_spinlock_lock(i)
154
154
#define XT_TAB_ROW_WRITE_LOCK(i, s)             xt_spinlock_lock(i)
333
333
        /* Values that belong in the header when flushed! */
334
334
        xtBool                                  tab_flush_pending;                                              /* TRUE if the table needs to be flushed */
335
335
        xtBool                                  tab_recovery_done;                                              /* TRUE if the table has been recovered */
 
336
        xtBool                                  tab_repair_pending;                                             /* TRUE if the table has been marked for repair */
336
337
        xtBool                                  tab_temporary;                                                  /* TRUE if this is a temporary table {TEMP-TABLES}. */
337
338
        off_t                                   tab_bytes_to_flush;                                             /* Number of bytes of the record/row files to flush. */
338
339
 
514
515
int                                     xt_use_table_by_id(struct XTThread *self, XTTableHPtr *tab, struct XTDatabase *db, xtTableID tab_id);
515
516
XTOpenTablePtr          xt_open_table(XTTableHPtr tab);
516
517
void                            xt_close_table(XTOpenTablePtr ot, xtBool flush, xtBool have_table_lock);
517
 
void                            xt_drop_table(struct XTThread *self, XTPathStrPtr name);
 
518
void                            xt_drop_table(struct XTThread *self, XTPathStrPtr name, xtBool drop_db);
518
519
void                            xt_check_table(XTThreadPtr self, XTOpenTablePtr tab);
519
520
void                            xt_rename_table(struct XTThread *self, XTPathStrPtr old_name, XTPathStrPtr new_name);
520
521
 
534
535
void                            xt_tab_seq_reset(XTOpenTablePtr ot);
535
536
void                            xt_tab_seq_exit(XTOpenTablePtr ot);
536
537
xtBool                          xt_tab_seq_next(XTOpenTablePtr ot, xtWord1 *buffer, xtBool *eof);
 
538
void                            xt_tab_seq_repeat(XTOpenTablePtr ot);
537
539
 
538
540
xtBool                          xt_tab_new_record(XTOpenTablePtr ot, xtWord1 *buffer);
539
541
xtBool                          xt_tab_delete_record(XTOpenTablePtr ot, xtWord1 *buffer);
562
564
xtBool                          xt_tab_put_log_op_rec_data(XTOpenTablePtr ot, u_int status, xtRecordID free_rec_id, xtRecordID rec_id, size_t size, xtWord1 *buffer);
563
565
xtBool                          xt_tab_put_log_rec_data(XTOpenTablePtr ot, u_int status, xtRecordID free_rec_id, xtRecordID rec_id, size_t size, xtWord1 *buffer, xtOpSeqNo *op_seq);
564
566
xtBool                          xt_tab_get_rec_data(register XTOpenTablePtr ot, xtRecordID rec_id, size_t size, xtWord1 *buffer);
 
567
void                            xt_tab_disable_index(XTTableHPtr tab, u_int ind_error);
565
568
void                            xt_tab_set_index_error(XTTableHPtr tab);
566
569
 
 
570
xtBool                          xt_tab_is_table_repair_pending(XTTableHPtr tab);
 
571
void                            xt_tab_table_repaired(XTTableHPtr tab);
 
572
void                            xt_tab_set_table_repair_pending(XTTableHPtr tab);
 
573
 
567
574
inline off_t            xt_row_id_to_row_offset(register XTTableHPtr tab, xtRowID row_id)
568
575
{
569
576
        return (off_t) tab->tab_rows.tci_header_size + (off_t) (row_id - 1) * (off_t) tab->tab_rows.tci_rec_size;
631
638
        while (0)
632
639
 
633
640
#endif
 
641