All Products
Search
Document Center

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

Last Updated:Aug 29, 2023

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 error message 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 **** appears in the execution record of a MaxCompute data shipping job (new version), the required RAM role is not added to your MaxCompute workspace. This issue occurs if a different RAM role rather than the required RAM role is added or if an error occurs when you add the required RAM role. 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 role.

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

If the error message 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 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 role.

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

If the error message FAILED: mismatched input 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 the statements. Then, this error does not occur when you execute statements such as ADD USER 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 error message 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. appears when you add a RAM role to your MaxCompute workspace by using the current user, the user does not have the operation or authorization permissions on MaxCompute accounts. In this case, you must assign the admin role to the 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 Project management tab, find the MaxCompute project that you want to manage and click Member management in the Actions column.

  4. On the page that appears, click Maxcompute Management in the left-side navigation pane. Then, click Custom User Roles.

  5. In the role list, find the admin role and click Manage Members in the Actions column.

  6. In the Manage Members dialog box, assign the admin role to the user and click Confirm.

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 Column. This way, data is partitioned by log time. MaxCompute partition

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 this 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.

__time__ field in MaxCompute Common Column