~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/table_placeholder.h

  • Committer: Brian Aker
  • Date: 2010-08-03 20:57:39 UTC
  • mfrom: (1680.6.4 rollup)
  • Revision ID: brian@gaz-20100803205739-7betgobkod41363k
Removes LOCK_system_variables_hash, one goto, drops internall new for std
new (so possible performance regression), fixes bug where Session was not
unlocked correctly.

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
namespace drizzled
27
27
{
28
28
 
29
 
namespace table
30
 
{
31
 
 
32
 
class Placeholder : public table::Concurrent
 
29
class TablePlaceholder : public Table
33
30
{
34
31
  TableShare private_share;
35
32
 
36
33
public:
37
 
  Placeholder(Session *session, TableIdentifier &identifier) :
38
 
    table::Concurrent(),
 
34
  TablePlaceholder(Session *session, TableIdentifier &identifier) :
 
35
    Table(),
39
36
    private_share(identifier, identifier.getKey())
40
37
  {
 
38
    is_placeholder_created= true;
41
39
    setShare(&private_share);
42
40
    in_use= session;
43
41
 
44
42
    locked_by_name= true;
45
43
  }
46
 
 
47
 
  bool isPlaceHolder(void) const
48
 
  {
49
 
    return true;
50
 
  }
51
 
 
52
 
  void release(void)
53
 
  {
54
 
    TableShare::release(getMutableShare());
55
 
  }
56
44
};
57
45
 
58
 
} /* namespace table */
59
46
} /* namespace drizzled */
60
47
 
61
48
#endif /* DRIZZLED_TABLE_PLACEHOLDER_H */