Something is broken in the Bloc Server database


#1

I am trying to compile a smart contract using bloc api and getting 500 internal server error. Below is the curl request.

Here is the log from strato_bloch_1

WARNING: there is no transaction in progress
GET /bloc/v2.1/users
Accept: application/json
Status: 200 OK 0.00566s
[Error] [BlockApps.Bloc21.Monad:290] [2017-09-12T06:05:53] DBError “No result, expected one row”
CallStack:
blocError, called at BlockApps.Bloc21.Monad:290:11
blocQuery1, called at BlockApps.Bloc21.Database.Queries:1353:16
getContractXabi, called at BlockApps.Bloc21.Database.Queries:730:13
POST /bloc/v2.1/contracts/compile
Request Body: [
{
“contractName”: “HolmDetails”,
“searchable”: [
“HolmDetails”,
“tags”
],
“source”: "contract HolmDetails{

string public HouseAddress;
string public HouseTitle;
string public ListerName;
string public ListerEmail;
string public ListerPhone;

address owner;

mapping(address => uint) balance;
   

function ProfileDetails(){
    owner = msg.sender;
}   


 
function setDetails(string _houseAddress,
string _houseTitle,
string _listerName,
string _listerEmail,
string _listerPhone
    ){
    if(msg.sender == owner){
      HouseAddress = _houseAddress;
      HouseTitle = _houseTitle;  
      ListerName = _listerName;
      ListerEmail = _listerEmail;
      ListerPhone =  _listerPhone;  
        
    }
}

}"
}
]
Accept: application/json;charset=utf-8
Status: 500 Internal Server Error 0.195269s
GET /bloc/v2.1/contracts


#2

I can’t see anything obvious here, @samrit @nikitam an you see anything?


#3

The searchable array has an extra contract name “tags”. We should probably remove that from the documentation since that seems to be confusing people. Bloc is probably complaining because it cannot find a contract named tags.


#4

@samrit can you add a ticket for a better error message to the backlog, too?


#5

I was able to compile after removing “tags” with response code 200. But the complied contract does not shows up on strato management dashboard.


#6

@samrit is it possible that the contract tab does not appear on compilation but only on upload of an individual instance?


#7

Yes. It only shows up after upload and not after compilation