• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

georgia-tech-db / eva / 71e127f1-e4ab-46c3-9d3e-d580ea2b0425

20 Sep 2023 02:57PM UTC coverage: 79.895% (+0.2%) from 79.745%
71e127f1-e4ab-46c3-9d3e-d580ea2b0425

push

circle-ci

web-flow
Merge branch 'georgia-tech-db:staging' into vector_pinecone

67 of 67 new or added lines in 11 files covered. (100.0%)

9625 of 12047 relevant lines covered (79.9%)

1.44 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

94.74
/evadb/executor/load_executor.py
1
# coding=utf-8
2
# Copyright 2018-2023 EvaDB
3
#
4
# Licensed under the Apache License, Version 2.0 (the "License");
5
# you may not use this file except in compliance with the License.
6
# You may obtain a copy of the License at
7
#
8
#     http://www.apache.org/licenses/LICENSE-2.0
9
#
10
# Unless required by applicable law or agreed to in writing, software
11
# distributed under the License is distributed on an "AS IS" BASIS,
12
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
# See the License for the specific language governing permissions and
14
# limitations under the License.
15
from evadb.database import EvaDBDatabase
2✔
16
from evadb.executor.abstract_executor import AbstractExecutor
2✔
17
from evadb.executor.executor_utils import ExecutorError
2✔
18
from evadb.executor.load_csv_executor import LoadCSVExecutor
2✔
19
from evadb.executor.load_multimedia_executor import LoadMultimediaExecutor
2✔
20
from evadb.parser.types import FileFormatType
2✔
21
from evadb.plan_nodes.load_data_plan import LoadDataPlan
2✔
22

23

24
class LoadDataExecutor(AbstractExecutor):
2✔
25
    def __init__(self, db: EvaDBDatabase, node: LoadDataPlan):
2✔
26
        super().__init__(db, node)
2✔
27

28
    def exec(self, *args, **kwargs):
2✔
29
        """
30
        Use TYPE to determine the type of data to load.
31
        """
32

33
        # invoke the appropriate executor
34
        if self.node.file_options["file_format"] is None:
2✔
35
            err_msg = "Invalid file format, please use supported file formats: CSV | VIDEO | IMAGE | DOCUMENT | PDF"
×
36
            raise ExecutorError(err_msg)
37
        if self.node.file_options["file_format"] in [
2✔
38
            FileFormatType.VIDEO,
39
            FileFormatType.IMAGE,
40
            FileFormatType.DOCUMENT,
41
            FileFormatType.PDF,
42
        ]:
43
            executor = LoadMultimediaExecutor(self.db, self.node)
2✔
44
        elif self.node.file_options["file_format"] == FileFormatType.CSV:
1✔
45
            executor = LoadCSVExecutor(self.db, self.node)
1✔
46

47
        # for each batch, exec the executor
48
        for batch in executor.exec():
2✔
49
            yield batch
2✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc