cmu-db / bustub

The BusTub Relational Database Management System (Educational)
https://15445.courses.cs.cmu.edu/
MIT License
3.92k stars 1.76k forks source link

Autograder functionality broken by two most recent commits a5c45ee and 82912b1 #685

Closed muffpy closed 7 months ago

muffpy commented 7 months ago

Not sure how issues here are formatted. Keeping it brief.

a5c45ee breaks make check-clang-tidy-p0 -j$(nproc). Error log from this command:

Checking: /autograder/source/bustub/src/planner/plan_func_call.cpp
Checking: /autograder/source/bustub/src/primer/trie.cpp
Checking: /autograder/source/bustub/src/primer/trie_store.cpp

/autograder/source/bustub/src/include/execution/expressions/string_expression.h:41:9: error: no matching constructor for initialization of 'bustub::AbstractExpression' [clang-diagnostic-error]
      : AbstractExpression({std::move(arg)}, Column{"<val>", TypeId::VARCHAR, 256 /* hardcode max length */}),
        ^                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/autograder/source/bustub/src/include/execution/expressions/abstract_expression.h:48:3: note: candidate constructor not viable: no known conversion from 'bustub::Column' to 'bustub::TypeId' for 2nd argument
  AbstractExpression(std::vector<AbstractExpressionRef> children, TypeId ret_type)
  ^
/autograder/source/bustub/src/include/execution/expressions/abstract_expression.h:41:7: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 2 were provided
class AbstractExpression {
      ^
/autograder/source/bustub/src/include/execution/expressions/string_expression.h:43:39: error: member reference base type 'bustub::TypeId' is not a structure or union [clang-diagnostic-error]
    if (GetChildAt(0)->GetReturnType().GetType() != TypeId::VARCHAR) {
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
/autograder/source/bustub/src/include/execution/expressions/string_expression.h:44:51: error: member reference base type 'bustub::TypeId' is not a structure or union [clang-diagnostic-error]
      BUSTUB_ENSURE(GetChildAt(0)->GetReturnType().GetType() == TypeId::VARCHAR, "unexpected arg");
                                                  ^
/autograder/source/bustub/src/include/common/macros.h:26:9: note: expanded from macro 'BUSTUB_ENSURE'
  if (!(expr)) {                                      \
        ^~~~
The files that failed were:
['/autograder/source/bustub/src/planner/plan_func_call.cpp']
Note that a failing .h file will fail all the .cpp files that include it.

make[3]: *** [CMakeFiles/check-clang-tidy-p0.dir/build.make:70: CMakeFiles/check-clang-tidy-p0] Error 1
make[2]: *** [CMakeFiles/Makefile2:1184: CMakeFiles/check-clang-tidy-p0.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:1191: CMakeFiles/check-clang-tidy-p0.dir/rule] Error 2
make: *** [Makefile:290: check-clang-tidy-p0] Error 2

Program exited with 2 in 27.315s

This step fails, and you'll get zero score for all steps even if you pass.

82912b1 affects make submit-p0 due to problem files being removed from CMakeLists.txt. The zip created doesn't contain the necessary files for Autograder.

SOLUTION: reset to 8db7bfc and submit to Autograder.

Corgile commented 2 months ago

SOLUTION: reset to 8db7bfc and submit to Autograder.

@muffpy hi, what do you mean by "reset to 8db7bfc" ? This only changes our local code but doesn't affect code on autograder, not sure, am I right?