All Products
Search
Document Center

Simple Log Service:Common errors and issues related to MaxCompute data shipping jobs (new version)

Last Updated:May 06, 2024

This topic describes the common errors and issues that are related to MaxCompute data shipping jobs (new version).

What do I do if the system reports an error that a RAM role does not exist?

If the ODPS-0420095: Access Denied - Authorization Failed [4002], You don't exist in project ****. Context ID:11111-1111-111-1111-11111111. --->Tips: Pricipal:INVALID$v4_11111111111; You don't exist in project **** error message appears in the execution record of a MaxCompute data shipping job (new version), the required Resource Access Management (RAM) role is not added to your MaxCompute workspace. This error occurs if a different RAM role rather than the required RAM role is added or the required RAM role failed to be added. Add the required RAM role again and complete the authorization. For more information, see Write data to MaxCompute by using a default role or Write data to MaxCompute by using a custom RAM role.

What do I do if the system reports an error that a RAM role does not have the required permissions?

If the ODPS-0420095: Access Denied - Authorization Failed [4019], You have NO privilege 'odps:Describe' on {acs:odps:*:projects/****/tables/****}. Context ID:111111-1111-11111-1111-1111111. --->Tips: Pricipal:INVALID$v4_111111111 error message appears in the execution record of a MaxCompute data shipping job (new version), the RAM role that you add to your MaxCompute workspace does not have the required permissions. Grant the required permissions to the RAM role. For more information, see Write data to MaxCompute by using a default role or Write data to MaxCompute by using a custom RAM role.

What do I do if the FAILED: mismatched input error message appears?

If the FAILED: mismatched input error message appears when you add a RAM role to your MaxCompute workspace by using a RAM user, the RAM user does not have the permissions to execute statements such as the ADD USER statement. If this error occurs, you must use an Alibaba Cloud account or a RAM user to which the following policy is attached to execute statements such as the ADD USER statement. This prevents the error from occurring when you execute statements such as the ADD USER statement again by using a RAM user.

{
  "Version": "1",
  "Statement": [
    {
      "Action": "ram:CreateServiceLinkedRole",
      "Resource": "*",
      "Effect": "Allow",
      "Condition": {
        "StringEquals": {
          "ram:ServiceName": "usermgmt.odps.aliyuncs.com"
        }
      }
    }
  ]
}

What do I do if the system reports an error that a user does not have the required permissions?

If the FAILED: ODPS-0130013:Authorization exception - Authorization Failed [4003], You have NO privilege to do the PROJECT SECURITY OPERATION for {acs:odps:*:projects/****/authorization/users}. Context ID:1111-11111-1111-1111-11111. error message appears when you add a RAM role to your MaxCompute workspace, the current user does not have permissions to perform management or authorization operations within the account to which the current MaxCompute project belongs. In this case, you must assign the admin role to the current user. For more information, see Permission relationships between MaxCompute and DataWorks.

You can perform the following operations to assign the admin role to a user:

  1. Log on to the MaxCompute console.

  2. In the upper-left corner of the page that appears, select a region.

  3. On the Projects page, find the project that you want to manage and click Manage in the Actions column.

  4. On the page that appears, click the Role Permissions tab.

  5. Find the admin role that you want to manage and click Manage Members in the Actions column.

  6. In the Manage Members dialog box, add the RAM user to the Added Account Name section.

  7. In the Manage Members dialog box, click OK.MaxCompute项目成员

How do I partition data by log time?

When you create a MaxCompute data shipping job (new version), you can set a partition key column to __partition_time__ in MaxCompute Partition Key Column. This way, data is partitioned by log time.MaxCompute分区

The value of the __partition_time__ field is calculated based on the __time__ field generated by Simple Log Service. The value is a time string that is generated based on the time zone and time partition format. The differences of time values in the partition key column are 1,800 seconds, equivalent to half an hour. This prevents the number of partitions in a single MaxCompute table from exceeding the limit. For more information, see the __partition_time__ field.

How do I view the partitions of a MaxCompute table?

You can run the show partitions {table-name}; command to view the partitions of a MaxCompute table. In the command, {table-name} specifies the name of the table. Replace the name with the actual value.

How do I ship log time data?

You can add the __time__ field to MaxCompute Common Column when you create a MaxCompute data shipping job (new version). The __time__ field indicates the log time in the UNIX timestamp format. The time is accurate to seconds.

MaxCompute时间列

What do I do if a field value is null?

A field value may be null due to one of the following reasons: The data type of the field is mismatched, the data type conversion fails, or the field does not exist in a log.

  • To fix the error that is caused by one of the first two reasons, perform the operations described in Processing of dirty data.

  • For more information about data type requirements, see Data types.