I have a contract such
contract tokenEvents
{
event globalEvent(address contractAddress, string eventName, uint value);
event globalEvent2(address contractAddress, string eventName, uint value, address senderAddress);
function callEvent(string eventName, uint value)
{
globalEvent(msg.sender, eventName, value);
}
function callEvent2(string eventName, uint value, address senderAddress)
{
globalEvent2(msg.sender, eventName, value, senderAddress);
}
}
Another contract is used to above contract such
function(){
uint amount = msg.value;
amountRaised += amount;
tokenEvents te = tokenEvents(0x5488845db957f6fd3691b0c2959b607dc52f09b2);
uint nValue;
address senderAddress;
if (msg.sender == partyone){
if (contribution[partyone] == 0)
{
contribution[partyone] = amount;
}
else
{
contribution[partyone] += amount;
}
eventName = "party1_contribution";
nValue = contribution[partyone];
senderAddress = partyone;
}
else if (msg.sender != beneficiary) {
partytwo = msg.sender;
if (contribution[partytwo] == 0){
contribution[partytwo] = amount;
} else {
contribution[partytwo] += amount;
}
eventName = "party2_contribution";
nValue = contribution[partytwo];
senderAddress = partytwo;
}
else {
if (contribution[msg.sender] == 0){
contribution[msg.sender] = amount;
} else {
contribution[msg.sender] += amount;
}
eventName = "other_contribution";
nValue = contribution[msg.sender];
senderAddress = msg.sender;
}
te.callEvent2(eventName, nValue, senderAddress);
}
Now whenever I send ether some ether to this contract its taking too much gas. For example: 20000
What is the issue?