Contributed by Calpont, InfiniDB Community Edition is an open source, scale-up analytics database engine for your data warehousing, business intelligence and read-intensive application needs. Enabled via MySQLTM and purpose-built for an analytical workload with column-oriented technology at its core, the multi-threaded capabilities of InfiniDB Community Edition fully encompass query, transactional support and bulk load operations.  So come on in, grab a download and get started.

             | 

Welcome, Guest
Username Password: Remember me

Table storage engine for '$vtable_9' doesn't have
(1 viewing) (1) Guest
  • Page:
  • 1

TOPIC: Table storage engine for '$vtable_9' doesn't have

Table storage engine for '$vtable_9' doesn't have 1 year, 11 months ago #463

  • MarkR42
  • OFFLINE
  • Fresh Boarder
  • Posts: 8
  • Karma: 0
Hi,

I do this query:

SELECT COUNT(UserID), AccountID,UserID, PolicyID,RemoteHost,Categories
 FROM wdsummaries 
WHERE AccountID=6692 AND Categories LIKE '%2381%' 
GROUP BY AccountID,UserID, PolicyID,RemoteHost,Categories 
ORDER BY AccountID;


And get:

ERROR 1031 (HY000): Table storage engine for '$vtable_9' doesn't have this option

Is this a bug or a known issue?

If I do the query without the ORDER BY, the query succeeds and produces the expected data.

Re:Table storage engine for '$vtable_9' doesn't have 1 year, 11 months ago #471

  • wweeks
  • OFFLINE
  • Moderator
  • Posts: 87
  • Karma: 3
We have a known issue that produces the same error when doing an order by on a large string - bugs.launchpad.net/infinidb/+bug/461522 . It looks like your query is ordering by an int column and you may have uncovered a different issue.

Would it be possible to post your create table statement, a few lines of sample data, and the row count for the table? I tried a few tests here with similar queries and wasn't able to reproduce the issue, but may have better luck with your table and data.

Thanks,
Walt

Re:Table storage engine for '$vtable_9' doesn't have 1 year, 11 months ago #481

  • MarkR42
  • OFFLINE
  • Fresh Boarder
  • Posts: 8
  • Karma: 0
CREATE TABLE wdSummaries (
  ID BIGINT,
  Proxy char(15) ,
  Minute BIGINT   ,
  Period BIGINT,
  AccountID BIGINT,
  PolicyID BIGINT  ,
  PrimaryGroupID BIGINT  ,
  UserID BIGINT  ,
  BandwidthDelay BIGINT  ,
  ClientIP BIGINT  ,
  Disposition CHAR(20),
  FirstTime bigint  ,
  GetTime BIGINT  ,
  LastTime bigint  ,
  RequestCount BIGINT   ,
  RequestFilterTime BIGINT  ,
  ResponseFilterTime BIGINT  ,
  RequestSize BIGINT   ,
  ResponseSize BIGINT  ,
  TotalTime BIGINT  ,
  WriteTime BIGINT  ,
  Categories char(255),
  Groups char(255) ,
  RemoteHost char(255),
  Rule char(255) ,
  VirusName char(255) 
) ENGINE=InfiniDB DEFAULT CHARSET=utf8;


The table has 4.5M rows in it, they look a bit like:
                ID: 1
             Proxy: prx01h
            Minute: 20832240
            Period: 1
         AccountID: 6692
          PolicyID: 5511
    PrimaryGroupID: NULL
            UserID: NULL
    BandwidthDelay: NULL
          ClientIP: 207069050
       Disposition: auth
         FirstTime: 1249934371192
           GetTime: NULL
          LastTime: 1249934371193
      RequestCount: 1
 RequestFilterTime: 0
ResponseFilterTime: NULL
       RequestSize: 564
      ResponseSize: NULL
         TotalTime: NULL
         WriteTime: NULL
        Categories: NULL
            Groups: NULL
        RemoteHost: images-l3.technoratimedia.com
              Rule: NULL
         VirusName: NULL

Re:Table storage engine for '$vtable_9' doesn't have 1 year, 11 months ago #485

  • davidhill
  • OFFLINE
  • Moderator
  • Posts: 554
  • Karma: 4
Hey Mark, as mentioned in the other thread. Try without the "DEFAULT CHARSET=utf8" and see if that works.

David

Re:Table storage engine for '$vtable_9' doesn't have 1 year, 11 months ago #486

  • wweeks
  • OFFLINE
  • Moderator
  • Posts: 87
  • Karma: 3
Mark,

Thanks for posting the create table statement. I was able to recreate your issue using it. It is the same issue as the other bug, it turns out it's the length of the result set rather than the length of the order by column that matters.

Increasing the max_length_for_sort_data MySQL parameters either in the my.cnf or command line will allow the query to run. I was able to run your query increasing it 2048 as follows:

set max_length_for_sort_data = 2048;

There is also a max_sort_length paramater that drives how many characters are actually used for the sort. As you are sorting by a bigint column, I don't think you'll need to change that one for this query.

Sort activities are processed by MySQL after the results are returned by InfiniDB, and the MySQL processing can change to an un-supported path for wide rows with sort. The above setting change MySQL to use it's base sort processing and appear to be the work-around for this query. For an even wider result set, you may need higher values.

I'll log an issue for us to provide a friendlier error message for this case. Thanks very much for reporting the issue.

Walt
  • Page:
  • 1
Time to create page: 0.41 seconds