Ejemplo n.º 1
0
 def get_result_schema(self, project):
     from hustle import Table
     fields = []
     for col in project:
         col = col.column
         if col.name not in fields:
             fields.append(col.schema_string())
     # print "GEEWHIZ: %s %s %s" % (indicies, fields, blobs)
     name = '-'.join([w._name for w in self.wheres])[:64]
     return Table(name="sub-%s" % name, fields=fields)
Ejemplo n.º 2
0
    def get_result_schema(self, project):
        import random
        from hustle import Table

        if self.output_table:
            return self.output_table
        fields = []
        for col_or_agg in project:
            col_spec = col_or_agg.schema_string()
            if col_spec not in fields:
                fields.append(col_spec)
        name = '-'.join([w._name for w in self.wheres])[:64]
        # append a 3-charactor random suffix to avoid name collision
        self.output_table = Table(name="sub-%s-%s" %
                                  (name, "".join(random.sample(_POOL, 3))),
                                  fields=fields)
        return self.output_table
Ejemplo n.º 3
0
    def get_result_schema(self, project):
        import random
        from hustle import Table

        if self.output_table:
            return self.output_table
        fields = []
        for col in project:
            col = col.column
            if col.name not in fields:
                fields.append(col.schema_string())
        name = '-'.join([w._name for w in self.wheres])[:64]
        # append a 3-digit random suffix to avoid name collision
        self.output_table = Table(name="sub-%s-%03d" %
                                  (name, random.randint(0, 999)),
                                  fields=fields)
        return self.output_table